Plot comparison

From Octave
Revision as of 09:52, 4 July 2014 by Andy1978 (talk | contribs) (→‎needs some work: minor fix: add author note and ml link)
Jump to navigation Jump to search

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.

Here is the generated fltk/dump.m as example.

needs some work

  • gnuplot + fltk area_01_1: draws a green background, Matlab a red one. The FLTK plot furthermore shows tiny vertical white stripes.
  • gnuplot + fltk colorbar_23_1: xtick unreadable. It should check the text_extent and reduce xticks if the xlabels would overlap.
  • gnuplot + 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 matlab does.
  • 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 + 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?
  • gnuplot + 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 bug#42159 (this probably is also the cause for black faces in shrinkfaces*)
  • gnuplot + fltk shrinkfaces_04_1: shows "inverted?/outer faces", completly different from matlab

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 bug fixes for that toolkit.

Nevertheless here are some visual gnuplot ONLY problems which need some attention:

  • gnuplot ezsurf_02_1: distorted despite "axis equal"
  • gnuplot isosurface_01_1: wrong scale, edges missing
  • gnuplot zlim_03_1: Warning/Error "line 0: *All* edges undefined or out of range, thus no plot." and an empty plot (as announced). FLTK plot is fine.

work in progress

  • plotyy_03: chunky dashed line for the '--' linestyle: Thread on ML

fixed

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_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_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.