I've done graphs in an application before using Quartz2D. Since the graph was particularly wide, I had to use a CATiledLayer for the view, which I think was what caused more issues than it fixed. The graph looked nice, but in the end, it was just too difficult to deal with. Too many bugs when trying to draw too much of the graph at once, or trying to draw the graph several times in a row quickly as the user changes between different views.
At this point, my suggestion would be to try something in OpenGL, though I don't know how you'd go about achieving it, since line drawing is pretty basic on the iPhone in OpenGL.