On Sep 1, 2008, at 5:25 PM, Ben Boxman wrote: Hi,
I've compiled the latest Octave (3.0.2) And the latest released gnuplot (4.2.3).
I'm vexed by octave/gnuplot not changing colors when plotting additional plots with hold-on. Yes, I know I can set colors manually (or pass all arguments to one big plot call) -- but this is: 1) Cumbersome for normal plots. 2) Even more cumbersome when using hist() and other built-in functions on-top of plot (with hist, you can get the output, and then call yet another function (bar -- that doesn't produce exactly the same results ([x,y] = hist(z); bar(y,x); -- is visually different than hist(z) -- probably some style default?)....).
This used to work properly in previous (<2.9.x) versions of octave. I use plots extensively, typically, I'll crunch some numbers in the command line and blurt them out as a plot/histogram (much easier to do this in octave than in gnuplot, any manipulation/processing/filtering is so much easier inside of octave). Just about every second plot I make involves multiple
Is there any quick solution for this?
Is this a gnuplot issue (e.g. like the zoom problem)? Will this be solved if I compile the unstable gnuplot 4.3? Is there any way I can patch octave to fix this (e.g., changing the default 'blue' to something cyclic, and intercepting hold and resetting said cyclic variable?)?
Man thanks,
Ben Boxman
The Octave developers are actively working to improve Octave's compatibility with Matlab.
Regarding the order of the colors, you can change the order by modifying the "colororder" property associated with the axis. See ...
> get (gca, 'colororder')
ans =
0.00000 0.00000 1.00000 0.00000 0.50000 0.00000 1.00000 0.00000 0.00000 0.00000 0.75000 0.75000 0.75000 0.00000 0.75000 0.75000 0.75000 0.00000 0.25000 0.25000 0.25000
so you could
colors = get (gca, 'colororder')
them modify the colors and/or order and then
set (gca, 'colororder', colors)
Is that sufficient for you needs?
Ben
|