|
From: Ryan D. <som...@ya...> - 2009-08-12 19:10:55
|
Hi, I realized some strange jiggling of plotlines in many svg-gnuplot-graphics. Especially when a plot is supposed to be precise and many datapoints are used, the problem gets worse. Seeking for the bug in the sourcecode, it turned out the problem is that every datapoint to be drawn is handed over as an integer, e.g. TERM_PUBLIC void SVG_vector (unsigned int x, unsigned int y) . In case of the standard-settings SVG_SCALE=1 , this means, that every point is binned to integer-pixelvalues, rendering the whole sense of vector-graphics useless. Some examples where the problem is directly visible: http://commons.wikimedia.org/wiki/File:Normal_distribution_cdf.svg http://commons.wikimedia.org/wiki/File:Soliton_2nd_order.svg (see the grid on the ground which is supposed to be flat) http://commons.wikimedia.org/wiki/File:Arcsin_plot.svg if you don't see what I mean, take a look at the 2000px versions. Many graphics of this kind can be found on the internet. Since it's not a problem concerning only svg-export but a flaw rooting deep inside gnuplot, i cant't correct it by myself. Gnuplot is used in many scientific applications and I'm absolutely convinced, that treating data-points as float values is the only reasonable choice. Those terminals who only support raster-images can round the values later on, and even they can take advantage of precisely located data-samples. As a user, I don't know how to solve it, so I hope you can fix this in the sourcecode. Floating-point output to svg-files with at least 3 digits precision seems essential. thanks in advance! btw: did you notice inkscape's inability to interpret the "color"-attributes in gnuplot-created svg-graphics? maybe it helps to assign stroke- and fill-colors directly. |
|
From: Thomas S. <t.s...@fz...> - 2009-08-14 13:11:16
|
don't know with which version of gnuplot these plots were generated, but since version 4.0 SVG_SCALE is 10. i'm not able to reproduce this poor quality with gnuplot 4.0, 4.2.5 and 4.3-cvs. Ryan Davis-4 wrote: > > Hi, > > I realized some strange jiggling of plotlines in many > svg-gnuplot-graphics. Especially when a plot is supposed to be precise > and many datapoints are used, the problem gets worse. > > Seeking > for the bug in the sourcecode, it turned out the problem is that every > datapoint to be drawn is handed over as an integer, e.g. > > TERM_PUBLIC void SVG_vector (unsigned int x, unsigned int y) . > > In > case of the standard-settings SVG_SCALE=1 , this means, that every > point is binned to integer-pixelvalues, rendering the whole sense of > vector-graphics useless. > > Some examples where the problem is directly visible: > http://commons.wikimedia.org/wiki/File:Normal_distribution_cdf.svg > http://commons.wikimedia.org/wiki/File:Soliton_2nd_order.svg (see the grid > on the ground which is supposed to be > flat) > http://commons.wikimedia.org/wiki/File:Arcsin_plot.svg > > if you don't see what I mean, take a look at the 2000px versions. Many > graphics of this kind can be found on the internet. > > > Since > it's not a problem concerning only svg-export but a flaw rooting deep > inside gnuplot, i cant't correct it by myself. Gnuplot is used in many > scientific applications and I'm absolutely convinced, that treating > data-points as float values is the only reasonable choice. Those > terminals who only support raster-images can round the values later on, > and even they can take advantage of precisely located data-samples. As > a user, I don't know how to solve it, so I hope you can fix this in the > sourcecode. Floating-point output to svg-files with at least 3 digits > precision seems essential. > > thanks in advance! > > > > btw: did you notice inkscape's inability to interpret the > "color"-attributes in gnuplot-created svg-graphics? maybe it helps to > assign stroke- and fill-colors directly. > > > > ------------------------------------------------------------------------------ > Let Crystal Reports handle the reporting - Free Crystal Reports 2008 > 30-Day > trial. Simplify your report design, integration and deployment - and focus > on > what you do best, core application coding. Discover what's new with > Crystal Reports now. http://p.sf.net/sfu/bobj-july > _______________________________________________ > Gnuplot-info mailing list > Gnu...@li... > https://lists.sourceforge.net/lists/listinfo/gnuplot-info > > -- View this message in context: http://www.nabble.com/ugly-data-point-rounding-error-tp24942864p24971481.html Sent from the Gnuplot - User mailing list archive at Nabble.com. |
|
From: some_guy <som...@ya...> - 2009-08-15 10:09:38
|
You are right. As I'm using gnuplot 4.2 patchlevel 4, the effect is indeed smaller. SVG_SCALE=10 and all data-points are rounded to a tenth of a pixel. This is much more satisfying, but errors are still visible. Could we set SVG_SCALE to 100 or 1000 ? Thomas Sefzick wrote: > > don't know with which version of gnuplot these plots were > generated, but since version 4.0 SVG_SCALE is 10. > i'm not able to reproduce this poor quality with > gnuplot 4.0, 4.2.5 and 4.3-cvs. > > > Ryan Davis-4 wrote: >> >> Hi, >> >> I realized some strange jiggling of plotlines in many >> svg-gnuplot-graphics. Especially when a plot is supposed to be precise >> and many datapoints are used, the problem gets worse. >> >> Seeking for the bug in the sourcecode, it turned out the problem is that >> every >> datapoint to be drawn is handed over as an integer, e.g. >> >> TERM_PUBLIC void SVG_vector (unsigned int x, unsigned int y) . >> >> In case of the standard-settings SVG_SCALE=1 , this means, that every >> point is binned to integer-pixelvalues, rendering the whole sense of >> vector-graphics useless. >> >> Some examples where the problem is directly visible: >> http://commons.wikimedia.org/wiki/File:Normal_distribution_cdf.svg >> http://commons.wikimedia.org/wiki/File:Soliton_2nd_order.svg (see the >> grid on the ground which is supposed to be >> flat) >> http://commons.wikimedia.org/wiki/File:Arcsin_plot.svg >> >> if you don't see what I mean, take a look at the 2000px versions. Many >> graphics of this kind can be found on the internet. >> >> >> Since it's not a problem concerning only svg-export but a flaw rooting >> deep >> inside gnuplot, i cant't correct it by myself. Gnuplot is used in many >> scientific applications and I'm absolutely convinced, that treating >> data-points as float values is the only reasonable choice. Those >> terminals who only support raster-images can round the values later on, >> and even they can take advantage of precisely located data-samples. As >> a user, I don't know how to solve it, so I hope you can fix this in the >> sourcecode. Floating-point output to svg-files with at least 3 digits >> precision seems essential. >> >> thanks in advance! >> >> >> >> btw: did you notice inkscape's inability to interpret the >> "color"-attributes in gnuplot-created svg-graphics? maybe it helps to >> assign stroke- and fill-colors directly. >> >> >> >> Gnuplot-info mailing list >> Gnu...@li... >> https://lists.sourceforge.net/lists/listinfo/gnuplot-info >> >> > > -- View this message in context: http://www.nabble.com/ugly-data-point-rounding-error-tp24942864p24983370.html Sent from the Gnuplot - User mailing list archive at Nabble.com. |