|
|
|
|
Gallery: Sharing an axis between plots (Python)Examples
Three datasets in separate plots with a common axis
pref = ChipsPreferences()
pref.curve.symbol.style = "none"
pref.plot.style = "open"
pref.axis.offset.perpendicular = 70
pref.axis.ticklabel.offset = 10
set_preferences(pref)
add_window(6.0,3.0)
strip_chart(3)
add_curve("aspect.fits[cols time,ra]")
limits(X_AXIS,AUTO,AUTO)
ax = ChipsAxis()
ax.majortick.style = "centered"
ax.minortick.style = "centered"
ax.majortick.length = 8
ax.minortick.length = 4
set_xaxis(ax)
ay = ChipsAxis()
ay.majortick.mode = "interval"
ay.majortick.interval = 5.0e-3
ay.tickformat = "%.3f"
set_yaxis(ay)
set_plot_ylabel("RA")
current_plot("plot2")
add_curve("aspect.fits[cols time,dec]")
ax = ChipsAxis()
ax.majortick.style = "centered"
ax.minortick.style = "centered"
ax.majortick.length = 8
ax.minortick.length = 4
set_xaxis(ax)
ay = ChipsAxis()
ay.majortick.mode = "interval"
ay.majortick.interval = 2.0e-3
ay.tickformat = "%.3f"
set_yaxis(ay)
set_plot_ylabel("Dec")
current_plot("plot3")
add_curve("aspect.fits[cols time,roll]")
set_plot_xlabel("Time (s)")
set_plot_ylabel("Roll")
set_xaxis(["tickformat","%.0f","offset.perpendicular",45])
ay = ChipsAxis()
ay.majortick.mode = "interval"
ay.majortick.interval = 5.0e-3
ay.tickformat = "%.3f"
set_yaxis(ay)
Three datasets in separated plots
set_preference("curve.symbol.style","none")
set_preference("axis.offset.perpendicular","70")
add_window(6.0,3.0)
strip_chart(3,0,5.0e-2)
add_curve("aspect.fits[cols time,ra]")
limits(X_AXIS,AUTO,AUTO)
ay = ChipsAxis()
ay.majortick.mode = "interval"
ay.majortick.interval = 5.0e-3
ay.tickformat = "%.3f"
set_yaxis(ay)
set_plot_ylabel("RA")
current_plot("plot2")
add_curve("aspect.fits[cols time,dec]")
ay = ChipsAxis()
ay.majortick.mode = "interval"
ay.majortick.interval = 2.0e-3
ay.tickformat = "%.3f"
set_yaxis(ay)
set_plot_ylabel("Dec")
current_plot("plot3")
add_curve("aspect.fits[cols time,roll]")
set_plot_xlabel("Time (s)")
set_plot_ylabel("Roll")
set_xaxis(["offset.perpendicular",45,"tickformat","%.0f"])
ay = ChipsAxis()
ay.majortick.mode = "interval"
ay.majortick.interval = 5.0e-3
ay.tickformat = "%.3f"
set_yaxis(ay)
Three datasets in separate plots with a hidden X axis
pref = ChipsPreferences()
pref.curve.symbol.style = "none"
pref.plot.style = "open"
pref.axis.offset.perpendicular = 30
pref.plot.leftmargin = 0.15
pref.plot.rightmargin = 0.15
set_preferences(pref)
add_window(6.0,3.0)
strip_chart(3)
add_curve("aspect.fits[cols time,ra]")
limits(X_AXIS,AUTO,AUTO)
cid = ChipsId()
cid.coord_sys = PLOT_NORM
add_label(cid,1.05,0.5,"RA")
hide_axis("ax1")
ay = ChipsAxis()
ay.majortick.mode = "interval"
ay.majortick.interval = 5.0e-3
ay.tickformat = "%.3f"
set_yaxis(ay)
current_plot("plot2")
add_curve("aspect.fits[cols time,dec]")
cid = ChipsId()
cid.coord_sys = PLOT_NORM
add_label(cid,-0.1,0.5,"Dec")
hide_axis()
display_axis("by2")
axis = ChipsAxis()
axis.majortick.mode = "interval"
axis.majortick.interval = 2.0e-3
axis.tickformat = "%.3f"
set_axis("by2",axis)
set_axis_ticklabel_visible("by2",1)
current_plot("plot3")
add_curve("aspect.fits[cols time,roll]")
set_xaxis(["tickformat","%.0f"])
ay = ChipsAxis()
ay.majortick.mode = "interval"
ay.majortick.interval = 5.0e-3
ay.tickformat = "%.3f"
set_yaxis(ay)
set_plot_xlabel("Time (s)")
cid = ChipsId()
cid.coord_sys = PLOT_NORM
add_label(cid,1.05,0.5,"Roll")
A grid where the plots share axes and the plot sizes are different
pref = ChipsPreferences()
pref.curve.symbol.style = "none"
pref.plot.leftmargin = 0.25
pref.plot.rightmargin = 0.1
pref.plot.bottommargin = 0.1
pref.axis.offset.perpendicular = 10
set_preferences(pref)
add_window()
split(2,2)
adjust_grid_xrelsize(1,2.0)
adjust_grid_yrelsize(1,2.0)
add_curve("aspect.fits[cols ra,dec]")
ay = ChipsAxis()
ay.majortick.interval = 2.0e-3
ay.majortick.mode = "interval"
ay.minortick.count = 3
ay.tickformat = "dec"
set_yaxis(ay)
set_axis_ticklabel_visible("ax1",0)
set_axis("bx2",["x.label","RA"])
current_plot("plot2")
add_curve("aspect.fits[cols time,dec]")
bind_axes("plot1","ay1","plot2","ay1")
set_axis_ticklabel_visible(0)
set_axis("by2",["y.label","Dec"])
# Hide both the lower and upper X axes
set_cascading_property("ax1",chips_axis,"visible","0")
set_cascading_property("bx2",chips_axis,"visible","0")
# Add a label above the plot along the X axis
cid = ChipsId()
cid.coord_sys = PLOT_NORM
add_label(cid,0.5,1.05,"Time",["halign",0.5,"size",14.0])
current_plot("plot3")
add_curve("aspect.fits[cols ra,time]")
bind_axes("plot1","ax1","plot3","ax1")
set_xaxis(["tickformat","ra"])
reverse_axes(X_AXIS)
ax = ChipsAxis()
ax.majortick.interval = 1.0e-2
ax.majortick.mode = "interval"
ax.minortick.count = 3
set_xaxis(ax)
# Hide both the left and right Y axes
set_cascading_property("ay1",chips_axis,"visible","0")
set_cascading_property("by2",chips_axis,"visible","0")
# Add a label to the left of the plot along the Y axis
cid = ChipsId()
cid.coord_sys = PLOT_NORM
add_label(cid,-0.1,0.5,"Time",["halign",0.5,"size",14.0,"angle",90.0])
# Remove the un-used plot created by split
delete_plot("plot4")
|
![]() |
The Chandra X-Ray
Center (CXC) is operated for NASA by the Smithsonian Astrophysical Observatory. 60 Garden Street, Cambridge, MA 02138 USA. Email: cxcweb@head.cfa.harvard.edu Smithsonian Institution, Copyright © 1998-2004. All rights reserved. |