Open main menu

Difference between revisions of "Plot comparison"

(move patch_04 to fixed section)
 
(33 intermediate revisions by 4 users not shown)
Line 1: Line 1:
Visual comparison of plot files from http://tech-chat.de/compare_plot_demos/. You can find the scripts which are used to create these plots in the default branch in scripts/testfun/private.
+
Visual comparison of plot files from http://josoansi.de/octave_plot_compare/compare_plot_demos_01.html until compare_plot_demos_0_08.html
  
Here is the generated [http://tech-chat.de/compare_plot_demos/fltk/dump.m fltk/dump.m] as example.  
+
* [http://josoansi.de/octave_plot_compare/compare_plot_demos_01.html Page 1: annotation .. colorbar]
 +
* [http://josoansi.de/octave_plot_compare/compare_plot_demos_02.html Page 2: colorbar .. ezplot]
 +
* [http://josoansi.de/octave_plot_compare/compare_plot_demos_03.html Page 3: ezplot .. legend]
 +
* [http://josoansi.de/octave_plot_compare/compare_plot_demos_04.html Page 4: legend .. meshz]
 +
* [http://josoansi.de/octave_plot_compare/compare_plot_demos_05.html Page 5: meshz .. quiver]
 +
* [http://josoansi.de/octave_plot_compare/compare_plot_demos_06.html Page 6: quiver .. slice]
 +
* [http://josoansi.de/octave_plot_compare/compare_plot_demos_07.html Page 7: slice .. trisurf]
 +
* [http://josoansi.de/octave_plot_compare/compare_plot_demos_08.html Page 8: trisurf .. zoom]
  
== needs some work ==
+
You can find the scripts which are used to create these plots in scripts/testfun/private.
  
* [http://tech-chat.de/compare_plot_demos/gnuplot/area_01_1.png gnuplot] + [http://tech-chat.de/compare_plot_demos/fltk/area_01_1.png fltk] area_01_1: draws a green background, [http://tech-chat.de/compare_plot_demos/matlab/area_01_1.png Matlab] a red one. The FLTK plot furthermore shows tiny vertical white stripes.
+
== Qt ==
  
* [http://tech-chat.de/compare_plot_demos/gnuplot/colorbar_23_1.png gnuplot] + [http://tech-chat.de/compare_plot_demos/fltk/colorbar_23_1.png fltk] colorbar_23_1: xtick unreadable. It should check the text_extent and reduce xticks if the xlabels would overlap.
+
* [http://josoansi.de/octave_plot_compare/compare_plot_demos_01.html#axis_09 axis_09,10,11,12, 13: No XAxisLocation zero] ({{bug |40588}} and {{bug |48562}}) since Matlab R2016a now supports "origin", this should be considered as an compatibility bug
 +
* [http://josoansi.de/octave_plot_compare/compare_plot_demos_02.html#copyobj_01 copyobj_01: Second line, legend and marker missing]
 +
* [http://josoansi.de/octave_plot_compare/compare_plot_demos_02.html#colorbar_19 colorbar_19: no colorbar]
 +
* [http://josoansi.de/octave_plot_compare/compare_plot_demos_03.html#hold_06 hold_06: transparency?]
 +
* [http://josoansi.de/octave_plot_compare/compare_plot_demos_03.html#imshow_07 imshow_07: ???, gnuplot does the same as matlab...]
 +
* [http://josoansi.de/octave_plot_compare/compare_plot_demos_03.html#fill_01 fill_01: Hidden edge is visible]
  
* [http://tech-chat.de/compare_plot_demos/gnuplot/colorbar_01_1.png gnuplot] + [http://tech-chat.de/compare_plot_demos/fltk/colorbar_01_1.png fltk] colorbar* : This is just a matter of taste but I (Andy1978) would prefer a  smaller gap (only 40% of the current implementation?) between colorbar and the plot like [http://tech-chat.de/compare_plot_demos/matlab/colorbar_01_1.png matlab] does.
+
* [http://josoansi.de/octave_plot_compare/compare_plot_demos_07.html#stem_06 stem_06: Vertical lines to the marker missing]
 +
* [http://josoansi.de/octave_plot_compare/compare_plot_demos_07.html#stem_07 stem_07: Vertical lines to the marker missing]
  
* [http://tech-chat.de/compare_plot_demos/fltk/colorbar_19_1.png fltk] colorbar_19_01.png : unusable colorbar with FLTK ([http://savannah.gnu.org/bugs/?42311 bug#42311]) when log scale is set, fine with [http://tech-chat.de/compare_plot_demos/gnuplot/colorbar_19_1.png gnuplot]
+
* [http://josoansi.de/octave_plot_compare/compare_plot_demos_07.html#shrinkfaces_02 shrinkfaces_02: wrong zoom]
 +
* [http://josoansi.de/octave_plot_compare/compare_plot_demos_07.html#shrinkfaces_04 shrinkfaces_04: wrong zoom]
  
* gnuplot + ftlk: fill_01_1, fill_02_1: hidden edges keep visible in ML, not with fltk or gnuplot. This seems to be a ML bug when printing to PNG or JPEG and works (same output like gnuplot+fltk) when printing to ps. In FLTK the on-screen images shows the hidden edge and becomes invisible when printing.
+
== gnuplot 4.6 ==
 
 
* [http://tech-chat.de/compare_plot_demos/gnuplot/hold_07_1.png gnuplot] + [http://tech-chat.de/compare_plot_demos/fltk/hold_07_1.png fltk]: hold_07_1: red rectangle hides the '^' plot markers. In ML they disappear on-screen as soon as xlim is changed or zoomed. Is this a ML bug? What is the prefered behaviour?
 
 
 
* [http://tech-chat.de/compare_plot_demos/gnuplot/shrinkfaces_04_1.png gnuplot] + [http://tech-chat.de/compare_plot_demos/fltk/shrinkfaces_04_1.png fltk] shrinkfaces_04_1: shows "inverted?/outer faces", completly different from [http://tech-chat.de/compare_plot_demos/matlab/shrinkfaces_04_1.png matlab]
 
 
 
* [http://tech-chat.de/compare_plot_demos/fltk/text_03_01.png fltk] text_03_01: can't print multi-line text objects [http://savannah.gnu.org/bugs/?31468 bug#31468]
 
 
 
== gnuplot only differences ==
 
  
 
There are a lot of gnuplot differences and it might be nice to fix those, but someone would have to take an interest. Octave is moving towards OpenGL for all plotting so most developers focuses on
 
There are a lot of gnuplot differences and it might be nice to fix those, but someone would have to take an interest. Octave is moving towards OpenGL for all plotting so most developers focuses on
 
bug fixes for that toolkit.
 
bug fixes for that toolkit.
  
Nevertheless here are some visual '''gnuplot ONLY''' problems which need some attention:
+
* [http://josoansi.de/octave_plot_compare/compare_plot_demos_01.html#annotation_01 annotation_01: Circle is missing]
 
+
* [http://josoansi.de/octave_plot_compare/compare_plot_demos_01.html#annotation_02 annotation_02: gnuplot boxes are wrong]
* [http://tech-chat.de/compare_plot_demos/gnuplot/fill_03_1.png gnuplot] fill_03_1: unusable
+
* <strike>[http://josoansi.de/octave_plot_compare/compare_plot_demos_01.html#annotation_05 annotation_05: gnuplot uses dotted lines instead of solid line]</strike>
 
+
* [http://josoansi.de/octave_plot_compare/compare_plot_demos_01.html#annotation_06 annotation_06: annotation is shifted]
* [http://tech-chat.de/compare_plot_demos/gnuplot/ezsurf_02_1.png gnuplot] ezsurf_02_1: distorted despite "axis equal"
+
* [http://josoansi.de/octave_plot_compare/compare_plot_demos_01.html#area_01 area_01: legend is cutted]
 
+
* [http://josoansi.de/octave_plot_compare/compare_plot_demos_01.html#axis_02 axis_02: xy plot yaxis inverted]
* [http://tech-chat.de/compare_plot_demos/gnuplot/isosurface_01_1.png gnuplot] isosurface_01_1: wrong scale, edges missing
+
* [http://josoansi.de/octave_plot_compare/compare_plot_demos_01.html#autumn_01 autumn_01: y-axis inverted + no color]
 
+
* [http://josoansi.de/octave_plot_compare/compare_plot_demos_01.html#colorbar_01 colorbar_01: inverted colorbar]
* [http://tech-chat.de/compare_plot_demos/gnuplot/trimesh_01_1.png gnuplot] trimesh_01_1: invisible lines [http://savannah.gnu.org/bugs/?42561 bug#42561]. [http://tech-chat.de/compare_plot_demos/fltk/trimesh_01_1.png FLTK] plot is fine.
+
* [http://josoansi.de/octave_plot_compare/compare_plot_demos_01.html#colorbar_02 colorbar_02: horizontally swapped colorbar]
 
+
* [http://josoansi.de/octave_plot_compare/compare_plot_demos_01.html#colorbar_07 colorbar_07: upper right colorbar is inverted]
* [http://tech-chat.de/compare_plot_demos/gnuplot/zlim_03_1.png gnuplot] zlim_03_1: Warning/Error "line 0: *All* edges undefined or out of range, thus no plot." and an empty plot (as announced). [http://tech-chat.de/compare_plot_demos/fltk/zlim_03_1.png FLTK] plot is fine.
+
* [http://josoansi.de/octave_plot_compare/compare_plot_demos_01.html#colorbar_08 colorbar_08: right colorbar is inverted]
 
+
* [http://josoansi.de/octave_plot_compare/compare_plot_demos_01.html#colorbar_12 colorbar_12: right colorbar is inverted]
== work in progress ==
+
* [http://josoansi.de/octave_plot_compare/compare_plot_demos_01.html#colorbar_14 colorbar_14: upper colorbar is inverted]
 
+
* [http://josoansi.de/octave_plot_compare/compare_plot_demos_02.html#colorbar_20 colorbar_20,21,22,23: inverted colorbar]
* plotyy_03: chunky dashed line for the '--' linestyle: [http://octave.1599824.n4.nabble.com/Changing-mark-space-for-dashed-lines-in-plots-td4665166.html Thread on ML]
+
* [http://josoansi.de/octave_plot_compare/compare_plot_demos_03.html#fill_03 fill_03: no gradient]
 
+
* [http://josoansi.de/octave_plot_compare/compare_plot_demos_03.html#hot_01 hot_01: lower plot yaxis inverted]
== fixed ==
+
* [http://josoansi.de/octave_plot_compare/compare_plot_demos_07.html#shrinkfaces_02 shrinkfaces_02: wrong vertexes]
 +
* [http://josoansi.de/octave_plot_compare/compare_plot_demos_07.html#shrinkfaces_04 shrinkfaces_04: wrong vertexes]
 +
* [http://josoansi.de/octave_plot_compare/compare_plot_demos_08.html#trimesh_01 trimesh_01: invisible lines. Qt plot is fine.] {{ bug |42561}}
  
* colorbar ticks: http://hg.savannah.gnu.org/hgweb/octave/rev/04a00ba54557
+
== Qt and gnuplot (independent of the used graphics_toolkit)==
  
* gnuplot + fltk compass_01_1: no proper scaling/zoom: A changeset from Stefan Mahr fixing a different part of polar() also solves the auto-scaling issue with compass().  See http://hg.savannah.gnu.org/hgweb/octave/rev/cff49c82f722.
+
* [http://josoansi.de/octave_plot_compare/compare_plot_demos_01.html#annotation_03 annotation_03: currently not all "headstyle" properties implemented which matlab has]
 +
* [http://josoansi.de/octave_plot_compare/compare_plot_demos_01.html#annotation_04 annotation_04: ??? What's correct here?]
 +
* [http://josoansi.de/octave_plot_compare/compare_plot_demos_01.html#area_01 area_01: Different colors, white vertical lines in FLTK/Qt]
 +
* [http://josoansi.de/octave_plot_compare/compare_plot_demos_01.html#cmpermute_01 cmpermute_01: No plot]
 +
* [http://josoansi.de/octave_plot_compare/compare_plot_demos_02.html#colorbar_23 colorbar_23: xtick unreadable. It should check the text_extent and reduce xticks if the xlabels would overlap]
 +
* [http://josoansi.de/octave_plot_compare/compare_plot_demos_01.html#colorbar_01 colorbar_01: This is just a matter of taste but I (Andy1978) would prefer a  smaller gap (only 40% of the current implementation?) between colorbar and the plot like matlab does]
 +
* [http://josoansi.de/octave_plot_compare/compare_plot_demos_02.html#bar_01 bar_01: Bars heights difference between octave and matlab]
  
* The right axis of the [http://tech-chat.de/compare_plot_demos/gnuplot/pareto_01_1.png Pareto plot] was being drawn in a different color from the left axis. http://hg.savannah.gnu.org/hgweb/octave/rev/f1e21a495e20
+
== Matlab errors due to incompatibilities ==
  
* [http://tech-chat.de/compare_plot_demos/matlab/patch_04_1.png gnuplot] + [http://tech-chat.de/compare_plot_demos/fltk/patch_04_1.png fltk] patch_04_1: the demo incorrectly assumes the patch "facecolor" is "flat" as octave currently sets this by default (whereas in matlab "facecolor" is "none" by default). This should be fixed with [http://savannah.gnu.org/bugs/index.php?42159 bug#42159] (this probably is also the cause for black faces in shrinkfaces*)
+
* [http://josoansi.de/octave_plot_compare/compare_plot_demos_01.html#axis_03 axis_03: Error using axis (line 204). Unknown command option ticx.]
 +
* [http://josoansi.de/octave_plot_compare/compare_plot_demos_01.html#axis_04 axis_04: Error using plot. Error in color/linetype argument.]
 +
* [http://josoansi.de/octave_plot_compare/compare_plot_demos_01.html#brighten_01 brighten_01: Error using axis (line 204). Unknown command option ticy.]
 +
* [http://josoansi.de/octave_plot_compare/compare_plot_demos_02.html#colorbar_19 colorbar_19: Error using matlab.graphics.illustration.ColorBar/set. There is no yscale property on the ColorBar class.]
  
 
== won't fix or Octave only feature ==
 
== won't fix or Octave only feature ==
  
* fltk/ML axis_09, axis_10, axis_11, axis_12, axis_13:  No, [x,y]axislocation' 'zero' (http://savannah.gnu.org/bugs/?40588). This is an Octave (and gnuplot) only feature. We can either blacklist, or visually skip over the comparison since it is blank for Matlab. Perhaps should be removed from demos or blacklist axis_09 in dump.m script
+
* matlab comet3_01, comet.png: Only the beginning of the animation is printed. Matlab implements comet in a completely different way which means printing isn't really possible for them.
 
+
* matlab polar_03, polar_05: Modifying ticks for rho (rticks) and theta (tticks) is an Octave addition.
* matlab comet3_01_1, comet_01_1.png: Only the beginning of the animation is printed. Matlab implements comet in a completely different way which means printing isn't really possible for them.
+
* matlab polar_04: Modifying color and text properties in polar plot is an Octave addition.
 
 
* matlab polar_03_1, polar_05_1: Modifying ticks for rho (rticks) and theta (tticks) is an Octave addition.
 
 
 
* matlab polar_04_1: Modifying color and text properties in polar plot is an Octave addition.
 
 
 
 
* Multiple Matlab plots with "Error in color/linetype argument". This is because adding legend keys with ";" in plot like "plot(1:10, "; a ramp;)" is an Octave only addition.
 
* Multiple Matlab plots with "Error in color/linetype argument". This is because adding legend keys with ";" in plot like "plot(1:10, "; a ramp;)" is an Octave only addition.

Latest revision as of 14:49, 27 August 2016

Visual comparison of plot files from http://josoansi.de/octave_plot_compare/compare_plot_demos_01.html until compare_plot_demos_0_08.html

You can find the scripts which are used to create these plots in scripts/testfun/private.

Contents

QtEdit

gnuplot 4.6Edit

Qt and gnuplot (independent of the used graphics_toolkit)Edit

Matlab errors due to incompatibilitiesEdit

won't fix or Octave only featureEdit

  • matlab comet3_01, comet.png: Only the beginning of the animation is printed. Matlab implements comet in a completely different way which means printing isn't really possible for them.
  • matlab polar_03, polar_05: Modifying ticks for rho (rticks) and theta (tticks) is an Octave addition.
  • matlab polar_04: Modifying color and text properties in polar plot is an Octave addition.
  • Multiple Matlab plots with "Error in color/linetype argument". This is because adding legend keys with ";" in plot like "plot(1:10, "; a ramp;)" is an Octave only addition.