Hi, First, I noticed a bug in the version I sent before. I've attached a new version in patch form, to be applied from the base directory of a normal 0.90.1 installation with 'patch -p1 <patch'.
One artifact I can clearly see is there is partly due to skipping lines < 1 pixel in length. The original agg renderer did this too, so it is not too different from before. My patch makes it worse, though. You can see it with plot(rand(10000)) again, but zoom out on only the y axis until the data is almost a straight line from right to left. You should see little clumps appear as it gets close to a straight line. Besides this I have not noticed anything. There may be problem cases I have not thought of, of course. To see the kind of problem that might occur, you can try changing the distance cutoff from 0.25 to something huge like 25.0. There you will definitely notice errors. About doing this for other image formats: I think it is OK for pixel-based images, but probably not for SVG or vector-based images. I can imagine someone writing to an SVG so that they can use another program to make a pretty rendering of it, but if lines are missing this second program does not have the full data to work with. Allan On Sat, July 7, 2007 10:15 pm, Eric Firing wrote: > John, > > > Have you considered Allan's version of _backend_agg.cpp (message date > was 06/27)? I just tried it, and so far, I like it. I have not found any > problems with the backend_driver.py test, and the improvement in speed > that Allan notes with the "plot(rand(100000))" example is dramatic--the > difference between unusable for panning and zooming with the original > backend, and quite responsive and very usable with Allan's version. > > I have not tried to understand the algorithm or code. > > > Allan, > > > Can you suggest a simple test that graphically illustrates the "loss of > accuracy", perhaps a worst case, so we can see whether this is an actual > problem? > > I am also wondering whether your optimization technique, or some > variation of it, could and should be applied in the generation of > vector-based printer files: ps, pdf, svg. They can get excessively large > and slow with very large datasets, and the ability to trim them with > minimal loss of genuine information conveyed to the ultimate viewer of the > plot would be very nice. > > Eric
patch
Description: Binary data
------------------------------------------------------------------------- This SF.net email is sponsored by DB2 Express Download DB2 Express C - the FREE version of DB2 express and take control of your XML. No limits. Just data. Click to get it now. http://sourceforge.net/powerbar/db2/
_______________________________________________ Matplotlib-devel mailing list Matplotlib-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-devel