ModelPlot
- class sherpa.plot.ModelPlot[source] [edit on github]
Bases:
Plot
Create 1D plots of model values.
- x
The X value for each point (the independent variable).
- Type:
array_like
- y
The Y value for each point (the dependent variable).
- Type:
array_like
- xerr
The half-width of each X “bin”, if set.
- Type:
array_like
- yerr
The error on the Y value, if set.
- Type:
array_like
- xlabel, ylabel, title
Plot labels.
- Type:
Examples
Plot up an example dataset. The default appearance is to draw a line between each point:
>>> from sherpa.data import Data1D >>> from sherpa.models.basic import StepLo1D >>> from sherpa.plot import ModelPlot >>> data = Data1D('a dataset', [10, 20, 25], [2, -7, 4]) >>> model = StepLo1D() >>> model.xcut = 19 >>> mplot = ModelPlot() >>> mplot.prepare(data, model) >>> mplot.plot()
The plot attributes can be changed to adjust the appearance of the plot, and the data re-drawn. The following also shows how the plot preferences can be over-ridden to draw the model as squares with no line connecting them (this assumes that the Matplotlib backend is in use):
>>> mplot.xlabel = 'length' >>> mplot.ylabel = 'model values' >>> mplot.plot(marker='s', linestyle='none')
Attributes Summary
The preferences for the plot.
Methods Summary
hline
(y[, xmin, xmax, linecolor, linestyle, ...])Draw a line at constant y, extending over the plot.
overplot
(*args, **kwargs)Add the data to an existing plot.
plot
([overplot, clearwindow])Plot the data.
prepare
(data, model[, stat])Create the data to plot
vline
(x[, ymin, ymax, linecolor, linestyle, ...])Draw a line at constant x, extending over the plot.
Attributes Documentation
- plot_prefs = {'alpha': None, 'capsize': None, 'color': None, 'ecolor': None, 'label': None, 'linestyle': '-', 'linewidth': None, 'marker': 'None', 'markerfacecolor': None, 'markersize': None, 'xerrorbars': False, 'xlog': False, 'yerrorbars': False, 'ylog': False}
The preferences for the plot.
Methods Documentation
- static hline(y, xmin=0, xmax=1, linecolor=None, linestyle=None, linewidth=None, overplot=False, clearwindow=True) [edit on github]
Draw a line at constant y, extending over the plot.
- overplot(*args, **kwargs) [edit on github]
Add the data to an existing plot.
This is the same as calling the plot method with overplot set to True.
See also
- plot(overplot=False, clearwindow=True, **kwargs)[source] [edit on github]
Plot the data.
This will plot the data sent to the prepare method.
- Parameters:
overplot (bool, optional) – If
True
then add the data to an existing plot, otherwise create a new plot.clearwindow (bool, optional) – Should the existing plot area be cleared before creating this new plot (e.g. for multi-panel plots)?
**kwargs – These values are passed on to the plot backend, and must match the names of the keys of the object’s plot_prefs dictionary.
- prepare(data: Data1D, model: Model, stat: Stat | None = None) None [source] [edit on github]
Create the data to plot
- Parameters:
data – The Sherpa data object to display (it is assumed to be one dimensional). This defines the grid over which the model is displayed.
model – The Sherpa model expression to evaluate and display.
stat (optional) – This parameter is unused.
See also
- static vline(x, ymin=0, ymax=1, linecolor=None, linestyle=None, linewidth=None, overplot=False, clearwindow=True) [edit on github]
Draw a line at constant x, extending over the plot.