Re: multiple 2d_plots in one system (itools) [message #36397 is a reply to message #36319] |
Fri, 12 September 2003 00:05   |
R.Bauer
Messages: 1424 Registered: November 1998
|
Senior Member |
|
|
Olaf Stetzer wrote:
> Hello,
>
> I am trying to plot multiple size distributions of an
> aerosol in one plot. What I have tried so far: the plot
> structure of the Jᅵlihc group, but it is limited to
> 25 datasets, in my case there can be 100 datasets.
Dear Olaf,
the limits comes from the legend entry field.
We thought it does not look good to have more as 25 lines in the legend.
You could extend this in get_plot_struct line 201
nlegend=25
to whatever you want.
If you switch of the legend by plot.new=3 this works too.
pro test
x=findgen(10) & y=sin(x)
plotprepare,plot,dim=1
plotinit,plot
for i=0,99 do begin
plot.legend_name=n2s(i)
y=y-float(i)/100.
plotxy,plot,x=x,y=y
plot.new=3
endfor
plotend,plot
end
By plot.new=2 the next plot get's no legend entry. So if you put every 4th
entry to the legend if it's size is 25 lines then it works too.
>
> What I tried next is the new itools procedure iplot,
> but it does not work as i expected it to. First, the
> x axis should be logarithmic (values from 0.038 to 16 ᅵm).
> When i set xrange to [min(xdata),max(xdata)] the axis ranges from
> ~0 to 10e16, so I tried alog10() of the above resulting in
> a LINEAR axis from -1.4 to 1.2 even though I have set /x_log.
> I cannot see a way to get the axis I want.
>
> Second I don't see any data in the plot although the visualisation
> manager shows all datasets (show=true). It's just my first try using
> itools, but it seems they are much less intuitive than I expected.
> Here is the code I used:
>
> xmin=min(Dp)
> xmax=max(Dp)
> ymax=max(50)
>
> for i=0,max_nr do begin
>
> if i eq 0 then begin
> iplot, Dp[*,i], dN[*,i]/duration[i], $
> /x_log,xrange=[xmin,xmax],yrange=[0,ymax]
> view_nr=itgetcurrent()
> endif else iplot, Dp[*,i], dN[*,i]/duration[i], $
> /x_log,xrange=[xmin,xmax],yrange=[0,ymax],overplot=view_nr
> endfor
>
> Omitting xrange, yrange and x_log does not change the result
> (as can be expected).
>
> Another question:
>
> Is there another easy way to get these plots done? I wonder
> if there is a way to get them in a 3D plot as stacked xy plots
> with z as the time of measurement but NOT as surface plots
> (but filled to the x-axis would be OK). Like this:
>
>
> y (counts, dN)
> |
> |
> | z(time)
> | / **
> | / **** *** **
> | / *** *** *****
> | ********** ******
> | / ++
> | / +++ +++ ++
> |++++ ++++++++++ ++++++++++++++++
> -------------------------------------------x (size, Dp)
>
> Hmmm, I hope you get my idea :-)
> So far, I haven't seen a way to do this in IDL.
Itools are a very good addon to idl. I got the 6.0 licenses on monday and we
are now waiting for the CDs.
Reimar
--
Forschungszentrum Juelich
email: R.Bauer@fz-juelich.de
http://www.fz-juelich.de/icg/icg-i/
============================================================ ======
a IDL library at ForschungsZentrum Juelich
http://www.fz-juelich.de/icg/icg-i/idl_icglib/idl_lib_intro. html
|
|
|