Grapher can interpolate functions of any degree through Lagrange's interpolation, approximate second degree curves and create graphs based of functions such as x*sin(x). This means that you can either enter coordinate points which will be connected through a curve, or you can enter equations. You can zoom into the graph to any (feasible) level.