Having spent two weeks in China with people asking me continuously how they could plot individual model components in ISIS, I have finally buckled down and written a couple of routines. I took a script originally written by Matteo Baccetti and generalized it a bit further. And I further made a second script that will do the same, but also do two plots, e.g., a plot_unfold and a plot_data. The scripts are on the ISIS vs. XSPEC page: http://space.mit.edu/home/mnowak/isis_vs_xspec/ and the use messages are below. Let me know if anyone has comments. -Mike %%%%%% plot_comps({data},pstruct,&plot_func); % pstruct=struct{dcol, mcol, ...} plot_comps({data},&plot_func;dcol={val},mcol={val},rcol={val,[arry],val},...); Use a fancy plotting function, e.g., plot_counts or plot_data or plot unfold, passed as a reference, and cycle through all the components with a norm parameter. Plot each of these as a separate model component. data is the usual combination of integers (=individual data sets), arrays (=data sets to be combined), and lists (=id of combined datasets). Examples: plot_comps({1,[2,3]},popt,&plot_counts;xrange={1,10}); plot_comps({5,8},&plot_unfold); plot_comps{{{1}},popt,&plot_data); %%%%%% plot_double({data},pstruct,&plot_funcI,&plot_funcII); % pstruct=struct{dcol, mcol, ...} plot_double({data},&plot_funcI,&plot_funcII;dcol={val},mcol={val},rcol={val,[arry],val},...); Using fancy plotting functions, e.g., plot_counts or plot_data or plot unfold, passed as references, apply plot_funcI in the upper panel and plot_funcII in the lower panel. (If residuals are chosen to be displayed, include a third panel for them beneath the first two plots.) In each plot, cycle through all the components with a norm parameter. Plot each of these as a separate model component. data is the usual combination of integers (=individual data sets), arrays (=data sets to be combined), and lists (=id of combined datasets). Plot parameters retain their usual meaning, with the exception of yrange. yrange is now a list of up to 6 elements, with the first two applying to plot_funcI, the next two applying to plot_funcII, and the final two applying to the residuals. Examples: plot_double({1,[2,3]},popt,&plot_unfold,&plot_counts;xrange={1,10}); plot_double({5,8},&plot_unfold,&plot_data); plot_double{{{1}},popt,&plot_data,&plot_counts); %%%%%% ---- You received this message because you are subscribed to the isis-users list. To unsubscribe, send a message to isis-users-request_at_email.domain.hiddenwith the first line of the message as: unsubscribeReceived on Mon Sep 16 2013 - 23:31:22 EDT
This archive was generated by hypermail 2.2.0 : Wed Oct 23 2013 - 12:31:42 EDT