|
|
Conversion guide: ChIPS 3 command language to ChIPS 4 S-Lang
Supported commands
The following commands - listed in alphabetical order -
can be replicated in the new version of ChIPS.
In most cases there is a one-to-one correspondance, although
occasionally several routines will have to be called.
-
AXES newcolor
-
set_cascading_property("all",chips_axis,"color","newcolor");
This will also change the color of any axis labels, which
the old command did not change. They can be restored to
the default color, if so desired, buy saying
set_axis({"label.color","default"});
-
AXES [WIDTH] w
-
set_cascading_property("all",chips_axis,"thickness","w");
where 0.5 <= w <= 10.
The last argument must be given as a string, so
AXIS 2
becomes
set_cascading_property("all",chips_axis,"thickness","2");
This will not change the thickness of the numeric labels
or axis labels. They can both be changed to a bold font,
if required, with
set_cascading_property("all",chips_axis,"fontstyle","bold");
or individually with
set_axis({"label.fontstyle","bold"});
set_axis({"ticklabel.fontstyle","bold"});
-
[AXIS] TWOAXES|FOURAXES|TWOAXESFRAME
[AXES] TWOAXES|FOURAXES|TWOAXESFRAME
-
set_plot({"style","open"}); % for TWOAXES
set_plot({"style","closed"}); % for FOURAXES
set_plot({"style","boxed"}); % for TWOAXESFRAME
- BATCH [on]
-
One of:
set_preference("window.display", "false");
set_window_redraw(0);
The command to use depends on whether a window has already
been created. If it has not then use set_preference,
otherwise use set_window_redraw.
See also the REDRAW call.
To run a job in the background you may need to use xvfb
to create a virtual X server for ChIPS to use.
- BATCH off
-
One of:
set_preference("window.display", "true");
set_window_redraw(1);
See the BATCH on command
for more information.
- C n
-
So C 2 becomes current_curve("crv2");.
- C all
-
- CLEAR
-
One of:
The clear() routine removes everything, including
windows, whereas the erase() routine deletes
everything within the current window.
- COLORSYS cmyk|grayscale|rgb
-
set_preference("export.colorscheme","cmyk");
set_preference("export.colorscheme","grayscale");
set_preference("export.colorscheme","rgb");
There is also "cmyksep", which creates four output
files, one for each channel (cyan, magenta, yellow,
and black). This format is only supported for the
ps and eps output types.
The color scheme can also be over-ridden when calling
print_window:
print_window("fig1.proof",{"colorscheme","cmyk"});
-
CONTOUR filename [LEVELS] l1 .. ln
-
If the file is an image, then one of:
make_figure("filename");
add_contour("filename");
make_figure("filename",[l1,..,ln]);
add_contour("filename",[l1,..,ln]);
The add_contour() version should be used if you wish
to add a contour to an existing plot.
If the file is a table, with the first three columns containing
the x, y, and z data values to contour:
tbl = read_file("filename");
x = get_colvals(tbl,"col1");
y = get_colvals(tbl,"col2");
z = get_colvals(tbl,"col3");
add_contour(x,y,z);
% or, if levels are specified
add_contour(x,y,z,[l1,..,ln]);
-
CONTOUR x y z LEVELS l1 .. ln
-
x, y, and z are one-dimensional arrays,
with the X-axis values increasing fastest.
add_contour(x,y,z);
add_contour(x,y,z, [l1, .., ln]);
It is also possible to contour an image by saying
where
img is a 1D or 2D array and nx
and ny are the X and Y dimensions to use.
-
PLOT filename
-
One of:
make_figure("filename");
add_curve("filename");
The make_figure() command will create a plot and
add axis labels and a plot title, based on the contents of
the file. The add_curve() command should be used
if more control over the plot appearance is needed, or
if you want to add more than one curve to a plot.
-
PLOT filename i j k
-
make_figure("filename[cols #i,#j,#k]");
add_curve("filename[cols #i,#j,#k]");
The column names can also be used instead of the column number
in the column filter.
-
CURVE filename <column list>
PLOT filename <column list>
-
add_curve("filename[cols ...]");
The columns to plot are taken from the number in the input file:
| Number of columns |
Meaning |
| 2 |
x,y |
| 3 |
x,y,dy |
| 4 |
x,y,dylo,dyhi |
so the Data Model column filter should be used to select the
columns to plot.
To plot other columns - e.g. to add X error bars - then the file
will have to be read in using Crates and the columns selected
manually, for example, if the first four columns of
tbl.fits are named X, Y,
XLO and XHI then
CURVE tbl.fits x 1 y 2 xdn 3 xup 4
would be converted to
tbl = read_file("tbl.fits");
x = get_colvals(tbl,"X");
y = get_colvals(tbl,"Y");
dxlo = get_colvals(tbl,"XLO");
dxhi = get_colvals(tbl,"XHI");
add_curve(x,y,{NULL,NULL,dxlo,dxhi});
ABSOLUTE error values are not supported; values will have to
be converted to relative form before plotting.
The SCOL column option is not supported.
- [CURVE] newcolor
-
set_curve({"line.color","newcolor"});
- [CURVE] newstyle
-
set_curve({"line.style","styleval"});
See the line style
section for the mapping between newstyle
and styleval.
- [CURVE] NOLINE
-
One of:
set_curve({"line.style","noline"});
set_curve({"line.style","none"});
- [CURVE] SIMPLELINE
-
set_curve({"line.style","solid"});
- [CURVE] WIDTH w
-
set_curve({"line.thickness",w});
where 0.5 <= w <= 10.
- [CURVE] SYM newcolor
-
set_curve({"symbol.color","newcolor"});
- [CURVE] SYM newstyle
-
One of:
set_curve({"symbol.style","styleval"});
set_curve({"symbol.style","styleval","symbol.fill",0});
See the symbol style
section for the mapping between newstyle
and styleval and whether the symbol.fill
attribute needs changing.
- [CURVE] SYM s
-
set_curve({"symbol.size",s});
where 1 <= s <= 100.
- D n
-
So D 2 becomes current_plot("plot2");.
- D all
-
- DELETE
-
delete_plot([id]);
delete_curve([id]);
delete_histogram([id]);
delete_contour([id]);
delete_line([id]);
delete_label([id]);
In the old ChIPS command language the object being deleted
was given by the context of the command, so the two commands
would delete all curves and the second drawarea respectively.
The new language has separate delete commands for the different
objects, so the above commands would be converted to:
delete_curve("all");
delete_plot("plot2");
or
current_curve("all");
delete_curve;
current_plot("plot2");
delete_plot;
- DRAWARA x1 x2 y1 y2
-
The order of the coordinates has changed.
- ERRS [X|Y] newcolor
-
set_curve({"err.color","newcolor"});
The use of the optional coordinate argument (i.e. "X" or
"Y") is no longer supported, since the properties
of the error bars are shared between all four bars (up, down,
right, and left), except for the visibility, which can be
changed individually.
- ERRS [X|Y] STANDARD
-
set_curve({"err.style","line"});
The use of the optional coordinate argument (i.e. "X" or
"Y") is no longer supported, since the properties
of the error bars are shared between all four bars (up, down,
right, and left), except for the visibility, which can be
changed individually.
- ERRS [X|Y] BAR
-
set_curve({"err.style","capped"});
The use of the optional coordinate argument (i.e. "X" or
"Y") is no longer supported, since the properties
of the error bars are shared between all four bars (up, down,
right, and left), except for the visibility, which can be
changed individually.
- ERRS [X|Y] BOTH|NONE
-
set_curve({"err.down",v,"err.up",v,"err.left",v,"err.right",v});
where v is 1 for BOTH
and 0 for NONE.
- ERRS X BOTH|NONE
-
set_curve({"err.left",v,"err.right",v});
where v is 1 for BOTH
and 0 for NONE.
- ERRS Y BOTH|NONE
-
set_curve({"err.down",v,"err.up",v});
where v is 1 for BOTH
and 0 for NONE.
- ERRS X UP
-
set_curve({"err.left",0,"err.right",1});
Changing the err.left value may not be necessary.
- ERRS X DOWN
-
set_curve({"err.left",1,"err.right",0});
Changing the err.right value may not be necessary.
- ERRS Y UP
-
set_curve({"err.down",0,"err.up",1});
Changing the err.down value may not be necessary.
- ERRS Y DOWN
-
set_curve({"err.down",1,"err.up",0});
Changing the err.up value may not be necessary.
- GRIDS [X|Y] ON|OFF
-
One of:
set_axis({"majorgrid.visible",v,"minorgrid.visible",v});
set_xaxis({"majorgrid.visible",v,"minorgrid.visible",v});
set_yaxis({"majorgrid.visible",v,"minorgrid.visible",v});
where v is 1 for ON
and 0 for OFF.
- GRIDS MAJ [X|Y] ON|OFF
-
One of:
set_axis({"majorgrid.visible",v});
set_xaxis({"majorgrid.visible",v});
set_yaxis({"majorgrid.visible",v});
where v is 1 for ON
and 0 for OFF.
- GRIDS MIN [X|Y] ON|OFF
-
One of:
set_axis({"minorgrid.visible",v});
set_xaxis({"minorgrid.visible",v});
set_yaxis({"minorgrid.visible",v});
where v is 1 for ON
and 0 for OFF.
- GRIDS [MAJ|MIN] [X|Y] newcolor
-
One of:
set_axis({"majorgrid.color","color","minorgrid.color","color"});
set_axis({"majorgrid.color","color"});
set_axis({"minorgrid.color","color"});
set_xaxis({"majorgrid.color","color","minorgrid.color","color"});
set_xaxis({"majorgrid.color","color"});
set_xaxis({"minorgrid.color","color"});
set_yaxis({"majorgrid.color","color","minorgrid.color","color"});
set_yaxis({"majorgrid.color","color"});
set_yaxis({"minorgrid.color","color"});
In the old command language, changing the property of
a grid would automatically display the grid. In the
new language the visibility has to be explicitly turned on; it
is not done automatically. So
GRIDS MAJ red
becomes, assuming the grid is not already visible,
set_axis({"majorgrid.color","red","majorgrid.visible",1});
- GRIDS [MAJ|MIN] [X|Y] newstyle
-
One of:
set_axis({"majorgrid.style","styleval","minorgrid.style","styleval"});
set_axis({"majorgrid.style","styleval",});
set_axis({"minorgrid.style","styleval"});
set_xaxis({"majorgrid.style","styleval","minorgrid.style","styleval"});
set_xaxis({"majorgrid.style","styleval",});
set_xaxis({"minorgrid.style","styleval"});
set_yaxis({"majorgrid.style","styleval","minorgrid.style","styleval"});
set_yaxis({"majorgrid.style","styleval",});
set_yaxis({"minorgrid.style","styleval"});
See the line style
section for the mapping between newstyle
and styleval.
See the GRIDS newcolor
command for information on setting the grid visibility.
- INFO
-
There is no one command that displays similar information
to the INFO command.
The info(), info_current(),
info_depth(), info_coordinate(), and
info_bound_axes() routines return a string containing information
on what objects have been created. The
info
preferences control the content and appearance
of the output of these routines.
Information on current
objects - such as the line color
or symbol type - can be found by saying
print(get_plot);
print(get_curve);
print(get_histogram);
print(get_contour);
print(get_line);
print(get_label);
- L n
-
So L 2 becomes current_label("lbl2");.
- L all
-
- LABEL x y "text"
-
If the text contains any "\" characters then add the R
qualifier after the string. For example
add_label(2,5,"y=\alpha^2"R);.
-
L n [LABEL] ANGLE a
-
set_label({"angle",a});
set_label("lbln",{"angle",a});
-
L n [LABEL] newcolor
-
set_label({"color","newcolor"});
set_label("lbln",{"color","newcolor"});
-
L n [LABEL] SIZE s
-
set_label({"size",s});
set_label("lbln",{"size",s});
where 1 <= s <= 100 and refers to the
size of the text in points.
-
L n [LABEL] "new text"
-
set_label_text("new text");
set_label_text("lbln","new text");
If the text contains any "\" characters then add the R
qualifier after the string. For example
set_label_text("y=\alpha^2"R);.
-
L n [LABEL] COORDS x y
-
-
LIMITS Y y1 y2
LIMITS x1 y1 x2 y2
-
limits(X_AXIS,x1,x2);
limits(Y_AXIS,y1,y2);
limits(XY_AXIS,lo,hi);
The only way to change the limits on both axes at the same
time is if the limits are the same. The AUTO symbol
can still be used, so
limits(Y_AXIS,-1e5,AUTO);
will set the lower limit of the Y axis to 1e-5 and the upper
limit to the maximum data value.
The * symbol is not supported.
- LINE x1 y1 x2 y2
-
If you want a horizontal or vertical line you can also use
the add_hline() and add_vline()
routines.
-
LN n [LINE] newcolor
-
set_line({"color","newcolor"});
-
LN n [LINE] newstyle
-
set_line({"style","styleval"});
See the line style
section for the mapping between newstyle
and styleval.
-
LN n [LINE] WIDTH w
-
set_line({"thickness",w});
where 0.5 <= w <= 10.
-
LN n [LINE] x1 y1 x2 y2
-
If the line is to be shifted, but not rotated
or stretched, then the move_line
routine can be used.
-
[AXIS|AXES] LINEAR X
[AXIS|AXES] LINEAR Y
-
linear_scale(XY_AXIS);
linear_scale(X_AXIS);
linear_scale(Y_AXIS);
- LN n
-
So LN 2 becomes current_line("line2");.
- LN all
-
- LOCATION x1 x2 y1 y2
-
reposition_plot(x1,y1,x2,y2);
The order of the coordinates has changed.
-
[AXIS|AXES] LOG X
[AXIS|AXES] LOG Y
-
log_scale(XY_AXIS);
log_scale(X_AXIS);
log_scale(Y_AXIS);
- PAGESIZE w h [unit]
-
One of:
set_preference({"export.pagewidth",w,
"export.pageheight",h});
set_preference({"export.pagewidth",w,
"export.pageheight",h,
"export.pageunits","unit"});
The allowed values for the pageunits attribute are:
cm, mm, inches, and
pixels.
It is also possible to set the output page size using a
paper size by setting the export.pagesize preference to
one of:
letter, legal, executive,
a3, a4, and a5.
The orientation of the output is controlled by the
export.orientation preference setting. The supported
values are "landscape" and "portrait".
The export.fittopage and export.keepaspect preference
settings control how the output page is filled, when the
output and window sizes are different. Further information
can be found in the
Export section.
The attributes can also be over-ridden when calling
print_window(), but only for
ps and eps output formats:
print_window("fig1",{"pagesize","letter","fittopage",1});
-
PICKPOINTS n
-
The escape key is used to end the selection
early (or when n is 0).
- PLOTFONT GREEK|ITALIC|OLDENGLISH|ROMAN|TINY
-
There can now be
multiple font types
within a visualization.
The choices are: helvetica, times, courier, and
greek. There
is only very-limited support for user-loaded fonts so only the
in-built fonts will be considered here.
The preference settings for each font field have to be
changed individually:
set_preference({"label.font",f,"plot.title.font",f,
"axis.label.font",f,"axis.ticklabel.font",f});
where f is one of
"helvetica", "times",
"courier", or "greek".
To change all existing text within a visialization to a
font f use:
set_cascading_property(chips_window,"font",f);
Individual values can also be changed. For example
set_label({"font","times"});
set_axis({"label.font","courier"});
Note that LaTeX commands to change the font within a label
override the font setting - e.g. the string label2 below
will remain as times (roman) whatever the font setting
is changed to for the label.
add_label(5,5,"label1 \textrm{label2}"R);
-
PRINT POSTFILE filename
-
One of:
print_window;
print_window("filename");
If no filename argument is given then the output will
be sent to your default printer.
The filename should not include .ps or .eps as this will be
automatically added (the suffix depends on the
export.format
preference setting).
The
export.*
set of preferences can be used to adjust the
output. So, to create a PNG version called plot.png:
print_window("plot",{"format","png"});
or to change the output size to US letter (here it will
create plot.ps as the default format is "ps").
print_window("plot",{"pagesize","letter","fittipage",1});
- REDRAW
-
This does not exactly replicate the behavior of
REDRAW, since it
not only causes the update of the display but also leaves
the redraw setting on. To update the display but make future
changes hidden you need to turn the redraw setting
back off.
- REDRAW on|off
-
v is 1 for "on" and 0 for
"off".
-
REDO n
-
-
RELATIVESIZE [n] x
-
One of:
adgust_grid_yrelsize(n,x);
adgust_grid_xrelsize(n,x);
The row and column numbering - indicated by the n
argument - starts at 1 at the top-left of the grid.
- RESTORE filename
-
See the STORE
command for information on changes to the format of the
state file.
- SPLIT [COLS] n
-
You can also use the
strip_chart
routine if you need plots
with bound axes (i.e. where the display range is
the same in each plot for the shared axis).
- SPLIT ncol nrow
-
Note that the argument order has changed.
The ordering of the plots has also changed, from
top to bottom then left to right
to
left to right then top to bottom
If you wish to change the
gaps between the rows or columns then you can use the
four-argument form of the routine:
split(nrow,ncol,ygap,xgap);
- SPLIT ncol nrow p
-
split(nrow,ncol);
current_plot("plotp");
Note that the argument order has changed.
- SPLIT COLS a b ...x
-
add_frame;
col_grid_objects([a,b,...,x],xgap,ygap,1);
The add_frame
call is not needed if a frame already exists.
The easiest way to check for this is to call
get_frame()
and see if an error message is created.
The second and third arguments refer to the x and
y gaps to use between plots, respectively. So
col_grid_objects([3,2],0.05,0,1);
adds a small horizontal gap between the two columns
but no vertical space between the rows.
- SPLIT GAP [X|Y] v
-
One of:
adjust_grid_xgap(v);
adjust_grid_ygap(v);
adjust_grid_gaps(v,v);
- SPLIT LOCATION x1 x2 y1 y2
-
pr = ChipsPlot;
pr.leftmargin = x1;
pr.rightmargin = 1 - x2;
pr.bottommargin = y1;
pr.topmargin = 1 - y2;
set_preferences(pr);
The plot.*margin preferences are used when deciding what
parts of the frame to fill with a split. So, instead of
calling SPLIT and then SPLIT LOCATION,
you now change the preferences before calling split.
Note that the margin values indicate the distance from the
edge, hence the need for 1-x2 and 1-y2 above.
- STORE filename
-
The file created by save_state() is in a binary format and
is not human readable. It includes all the data needed to
re-create the plot, as well as the command history, so you
can use undo to step back through your changes.
- TICKS [MAJ] [X|Y] v
-
One of:
set_axis({"majortick.interval",v,"majortick.mode","interval"});
set_xaxis({"majortick.interval",v,"majortick.mode","interval"});
set_yaxis({"majortick.interval",v,"majortick.mode","interval"});
- TICKS MIN [X|Y] v
-
One of:
set_axis({"minortick.interval",v,"minortick.mode","interval"});
set_xaxis({"minortick.interval",v,"minortick.mode","interval"});
set_yaxis({"minortick.interval",v,"minortick.mode","interval"});
- TICKVALS [X|Y] ON|OFF
-
One of:
set_axis_ticklabel_visible(v);
set_axis_ticklabel_visible("ax1",v);
set_axis_ticklabel_visible("ay1",v);
where v is 1 for ON
and 0 for OFF.
The whole axis - including label - can be hidden
or displayed using the
hide_axis
and
display_axis
routines.
- TICKVALS [X|Y] format|AUTO
-
One of:
set_axis({"tickformat",format});
set_xaxis({"tickformat",format});
set_yaxis({"tickformat",format});
where the default format is "%g" (e.g. if
AUTO was specified).
Note that there are a
number
of improvements to the
format support in ChIPS, including exponential notation
(%z and %Z) and sexagesimal formats
(ra and dec).
-
TITLE "text"
-
set_plot_title("");
set_plot_title("text");
If the text contains any "\" characters then add the R
qualifier after the string. For example
set_plot_title("y=\alpha^2"R);.
- TITLE newcolor
-
set_plot({"title.color","newcolor"});
- TITLE SIZE b
-
set_plot({"title.size",b});
The size is now given in points and can be
1 <= n <= 100.
-
UNDO n
-
-
XLABEL "text"
-
set_plot_xlabel("");
set_plot_xlabel("text");
If the text contains any "\" characters then add the R
qualifier after the string. For example
set_plot_xlabel("\Delta"R);.
- XLABEL newcolor
-
set_xaxis({"label.color","newcolor"});
- XLABEL [SIZE] n
-
set_xaxis({"label.size",n});
The size is now given in points and can be
1 <= n <= 100.
-
YLABEL "text"
-
set_plot_ylabel("");
set_plot_ylabel("text");
If the text contains any "\" characters then add the R
qualifier after the string. For example
set_plot_ylabel("\Delta"R);.
- YLABEL newcolor
-
set_yaxis({"label.color","newcolor"});
- YLABEL [SIZE] n
-
set_yaxis({"label.size",n});
The size is now given in points and can be
1 <= n <= 100.
Supported S-Lang routines
The routines no longer return 0 or -1
to indicate success or failiure; instead an error is thrown if
a problem occurs.
-
curve(x,y,dy);
curve(x,y,dylo,dyhi);
curve(x,y,dxlo,dxhi,dylo,dyhi);
-
One of:
add_curve(x,y);
add_curve(x,y,dy);
add_curve(x,y,{dylo,dyhi});
add_curve(x,y,{dylo,dyhi,dxlo,dxhi});
-
chips_label(x,y,text,newcolor);
chips_label(x,y,text,newcolor,size);
chips_label(x,y,text,newcolor,size,angle);
-
One of:
add_label(x,y,text);
add_label(x,y,text,{"color",newcolor,});
add_label(x,y,text,{"color",newcolor,"size",s});
add_label(x,y,text,{"color",newcolor,"size",s,"angle",a});
If the text contains any "\" characters then add the R
qualifier after the string. For example
add_label(2,5,"y=\alpha^2"R);.
As with the
LABEL command
the size value is now in points
and is not a scaling factor.
-
chips_line(x1,y1,x2,y2,newcolor);
chips_line(x1,y1,x2,y2,newcolor,width);
chips_line(x1,y1,x2,y2,newcolor,width,newstyle);
-
One of:
add_line(x1,y1,x2,y2);
add_line(x1,y1,x2,y2,{"color",newcolor,});
add_line(x1,y1,x2,y2,{"color",newcolor,"thickness",w});
add_line(x1,y1,x2,y2,{"color",newcolor,"thickness",w,"style","styleval"});
where 0.5 <= w <= 10
and see the line style
section for the mapping between newstyle
and styleval.
The add_hline() and add_vline()
routines can be used to
create horizontal or vertical lines respectively.
- chips_split(ncol,nrow);
-
See the SPLIT ncol nrow command.
- chips_split(ncol,nrow,p);
-
See the SPLIT ncol nrow p command.
- chips_clear;
-
See the CLEAR command.
- chips_redraw;
-
See the REDRAW command.
- chips_auto_redraw;
-
See the REDRAW ON|OFF command.
- a = chips_pickpoints;
-
The Escape key is used to terminate the process.
The return value is no-longer a single array with values
stored as [x1,y1,x2,y2,...,xn,yn], but is a 3 or 4-element
array, where
-
a[0] contains the X coordinates
-
a[1] contains the Y coordinates
-
a[2] indicates what was pressed
(e.g. mouse button, key)
-
a[3] indicates what key was pressed
(not created if only mouse presses were recorded.
- a = chips_pickpoints(n);
-
The Escape key is used to terminate the process.
See the chips_pickpoints()
description for details on the format of the return value.
-
-
See the LIMITS command.
- chips_get_xrange()
-
The return value is a 2-element array, in minumum, maximum
order.
- chips_get_yrange()
-
The return value is a 2-element array, in minumum, maximum
order.
-
-
See the LOG and
LINEAR commands.
-
chips_set_drawing_area(n)
-
The chips.* preference settings
The number of preferences, and the system of setting them,
have seen significant changes in CIAO 4.0,
as discussed in the
preferences
concept documentation.
The mapping from old to new preference names is:
| CIAO 3 |
CIAO 4 |
| chips.curvestyle |
curve.line.style |
|
chips.symbolstyle |
curve.symbol.style
|
|
chips.linestyle |
line.style
|
|
chips.curvecolor |
curve.line.color
|
|
chips.symbolcolor |
curve.symbol.color
|
|
chips.linecolor |
line.color
|
|
chips.linewidth |
line.thickness
|
|
chips.symbolsize |
curve.symbol.size
|
|
chips.font |
label.font
|
|
chips.font |
axis.label.font
|
|
chips.font |
axis.ticklabel.font
|
|
chips.font |
plot.title.font
|
|
chips.colorsys |
export.colorscheme
|
|
chips.pagewidth |
export.pagewidth
|
|
chips.pagelen |
export.pageheight
|
|
chips.unit |
export.pageunits
|
|
chips.padfactor |
axis.pad
|
|
chips.lowerloglimit |
axis.logminimum
|
The following fields are either not supported or no-longer
relevant:
chips.undo,
chips.savevars,
chips.tmpdir,
chips.tmpdata,
chips.fullautolimits, and
chips.mingridsize.
It is possible to override the preference settings when
creating an object; such overrids only affect the created
object and not the preference values themselves. So
add_curve(x,y,{"line.color","red","symbol.style","none"});
will draw the curve with a red line and no symbols, but will
not change the curve.line.color and curve.symbol.style
preference settings.
An alternative way to make these changes is to use the
ChipsXXX objects rather than a list of name,value pairs
as above:
ci = ChipsCurve;
ci.line.color = "red";
ci.symbol.style = "none";
add_curve(x,y,ci);
It is still possible to create an object and then change its
properties, and this can use either the list or object approach:
add_curve(x,y);
set_curve({"line.color","red","symbol.style","none"});
or
add_curve(x,y);
ci = ChipsCurve;
ci.line.color = "red";
ci.symbol.style = "none";
set_curve(ci);
Unsupported commands
The following commands are not supported in the new
version of ChIPS. Alternatives are given where possible.
-
C a,b,...,x
-
Only one curve or all curves can be current at any one time.
The code will have to be re-written to work on each curve
individually.
-
PLOT DATA filename ...
-
This option is not supported. Errors must be given when the
curve is created.
- [CURVE] SCALE [X|Y] value
-
There is no way to change the data values once they
have been plotted. The data has to be scaled prior to
plotting, so
CURVE "foo.fits[cols X,Y]"
SCALE Y 2
would become
tbl = read_file("foo.fits");
x = get_colvals(tbl,"X");
y = get_colvals(tbl,"Y");
add_curve(x,y*2);
- [CURVE] STEP
-
In the old ChIPS command langauge the CURVE command
could be used to plot (x,y) values as a histogram
by using the STEP connector style. The new language
treats histograms as a separate type of visualization.
The data should therefore be plotted using the
add_histogram
routine instead of add_curve. So
CURVE "hist.fits[cols xmid,y]"
STEP
becomes
add_histogram("hist.fits[cols xmid,y]");
-
D a,b,...,x
-
Only one plot or all plots can be current at any one time.
The code will have to be re-written to work on each plot
individually.
- DEBUG [on|off]
- DISPLAY imagename
-
Use ds9 to view the file by saying
- EDITMODE ...
- ERRS [X|Y] linestyle
-
It is not possible to change the line style of
error bars. They are always drawn using a solid line.
- ERRS [X|Y] ABSOLUTE|RELATIVE
-
All errors are given as relative values.
- ERRS [X|Y] SIZE v
-
The size of the head, or cap, of error bars can not
be changed.
-
L a,b,...,x
-
Only one label or all labels can be current at any one time.
The code will have to be re-written to work on each label
individually.
- LEVELS l1 ... lN
-
The following commands do not work correctly and should
not be used in the CIAO 4.0 release of ChIPS:
set_contour_levels([l1,...,lN]);
set_contour_numlevels(n);
-
LN a,b,...,x
-
Only one line or all lines can be current at any one time.
The code will have to be re-written to work on each line
individually.
- PACK ...
-
Once an object has been created its name - such
as crv1 for a curve - can not
be changed.
- SKIP n
-
Use the data model filter
#row=...
to restrict the rows read in from a file.
- SPLIT GAP [X|Y] n v
-
There is no way to change the spacing of plots in a given
column or row.
- SPLIT MAJ X|Y
-
This command is no longer required as the individual
routines allow you to work with rows or columns. So
SPLIT 2
SPLIT MAJ Y
becomes
- SURFACE ...
-
Surface plots are not supported in CIAO 4.0.
- TICKVALS [SIZE] [X|Y] s
-
There is no equivalent command since the scaling of axis elements
is handled differently.
The label sizes are now given in points and can be changed with
the "label.size" and "ticklabel.size" attributes
of an axis.
The length of the major and minor tick marks are controlled by the
"majortick.length" and "minortick.length" attributes
of an axis.
- TYPE
- VERBOSE
- VIEWPOINT ...
- ZLABEL ...
- Any command referring to the Z axis
Unsupported S-Lang routines
The following routines are not available in CIAO 4.0.
-
-
Use the info_current
routine to find out the selected objects.
-
-
The number of colors available in ChIPS has significantly
increased in CIAO 4.0.
- chips_eval()
-
-
|