Plot comparison

From Octave
Revision as of 07:10, 15 August 2014 by (talk) (→‎needs some work: Latex labels in fltk print output)
Jump to navigation Jump to search

Visual comparison of plot files from 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: draws a green background, Matlab a red one. The FLTK plot furthermore shows tiny vertical white stripes.
  • gnuplot + fltk colorbar_23: 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.
  • fltk colorbar_19.png : unusable colorbar with FLTK (bug#42311) when log scale is set, fine with gnuplot
  • gnuplot + ftlk: fill_01, fill_02: 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: 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 shrinkfaces_04: shows "inverted?/outer faces", completly different from matlab
  • fltk colorbar_20: Latex label 10^{2}, 10^{1.5} not in print output. (TODO: add corresponding bug report)

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: distorted despite "axis equal"
  • gnuplot isosurface_01: wrong scale, edges missing
  • gnuplot zlim_03: 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


  • gnuplot + fltk patch_04: 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*)

won't fix or Octave only feature

  • fltk/ML axis_09, axis_10, axis_11, axis_12, axis_13: No, [x,y]axislocation' 'zero' ( 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 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.