User:Tigerbw/Asymptote/graphing
Graphing
So basically, I was bored one day, and I wanted to do some stuff so I went to Desmos. I got bored again, so I thought to make Desmos in asymptote. This is what I got
Source Code
/**
* Graphing Remastered
*
* Made by tigerbw
*/
real resolution, x_left, x_right, g_x_left, g_x_right, y_down, y_up;
resolution = 0.001;
x_left = -8;
x_right = 8;
y_down = -8;
y_up = 8;
g_x_left = -8;
g_x_right = 8;
pen gray_pen = gray(.7);
pen graph_pen = 1+blue;
void grid(){
real[] arrx, arry;
for (real i = x_left+1; i < x_right; i+=1){
draw((i, y_down)--(i, y_up), gray_pen);
}
for (real i = y_down+1; i < y_up; i+=1){
draw((x_left, i)--(x_right, i), gray_pen);
}
draw((x_left, 0)--(x_right, 0),Arrows);
draw((0,y_down)--(0, y_up),Arrows);
}
real f(real x){ // equation to graph
if (x!=1) { // check for impossible case
return x^2/((x-1));
}
else{
return y_up+1;
}
}
void dotgraph(){
bool prev = false;
for (real i = g_x_left; i<=g_x_right; i+= resolution){
if (f(i)<y_up && f(i) > y_down){
if (prev == true){
draw((i, f(i))--(i-resolution, f(i-resolution)), graph_pen);
}
prev = true;
}
else{
prev = false;
}
}
}
grid();
dotgraph();