Class DataStreamer
- Namespace
- ScottPlot.Plottables
- Assembly
- ScottPlot.dll
public class DataStreamer : IPlottable, IManagesAxisLimits, IHasLine, IHasLegendText, IHasMarker
- Inheritance
-
DataStreamer
- Implements
- Inherited Members
- Extension Methods
Constructors
DataStreamer(Plot, double[])
public DataStreamer(Plot plot, double[] data)
Parameters
Properties
Axes
This object performs coordinate/pixel translation at render time based on the latest data area. It stores the axes to use for this plottable and also the data area (in pixels) updated just before each render. If this object is null it will be constructed using the default X and Y axes at render time.
public IAxes Axes { get; set; }
Property Value
Color
public Color Color { get; set; }
Property Value
ContinuouslyAutoscale
[Obsolete("set Plot.Axes.ContinuouslyAutoscale", true)]
public bool ContinuouslyAutoscale { get; set; }
Property Value
Count
public int Count { get; }
Property Value
CountTotal
public int CountTotal { get; }
Property Value
Data
public DataStreamerSource Data { get; set; }
Property Value
HasNewData
Returns true if data has been added since the last render
public bool HasNewData { get; }
Property Value
IsVisible
Toggles whether this plottable is shown and contributes to the automatic axis limit detection. The calling method will check this variable (it does not need to be checked inside the Render method).
public bool IsVisible { get; set; }
Property Value
Label
[Obsolete("use LegendText")]
public string Label { get; set; }
Property Value
LegendItems
Items which will appear in the legend
public IEnumerable<LegendItem> LegendItems { get; }
Property Value
LegendText
If populated, this text appears in the legend
public string LegendText { get; set; }
Property Value
LineColor
public Color LineColor { get; set; }
Property Value
LinePattern
public LinePattern LinePattern { get; set; }
Property Value
LineStyle
public LineStyle LineStyle { get; set; }
Property Value
LineWidth
public float LineWidth { get; set; }
Property Value
ManageAxisLimits
If enabled, axis limits will be adjusted automatically if new data runs off the screen.
public bool ManageAxisLimits { get; set; }
Property Value
MarkerColor
public Color MarkerColor { get; set; }
Property Value
MarkerFillColor
public Color MarkerFillColor { get; set; }
Property Value
MarkerLineColor
public Color MarkerLineColor { get; set; }
Property Value
MarkerLineWidth
public float MarkerLineWidth { get; set; }
Property Value
MarkerShape
public MarkerShape MarkerShape { get; set; }
Property Value
MarkerSize
public float MarkerSize { get; set; }
Property Value
MarkerStyle
public MarkerStyle MarkerStyle { get; set; }
Property Value
Period
public double Period { get; set; }
Property Value
Renderer
Logic for displaying the fixed-length Y values in Data
public IDataStreamerView Renderer { get; set; }
Property Value
Methods
Add(double)
Shift in a new Y value
public void Add(double value)
Parameters
value
double
Add(double[])
public void Add(double[] ys)
Parameters
ys
double[]
AddRange(IEnumerable<double>)
Shift in a collection of new Y values
public void AddRange(IEnumerable<double> values)
Parameters
values
IEnumerable<double>
Clear(double)
Clear the buffer by setting all Y points to the given value
public void Clear(double value = 0)
Parameters
value
double
GetAxisLimits()
Return the 2D area (in coordinate space) occupied by the data contained in this plottable
public AxisLimits GetAxisLimits()
Returns
Render(RenderPack)
Draw the data from this plottable into the data area defined in the Axes. By default the surface is already clipped to the data area, but this can be cleared inside the plottable.
public virtual void Render(RenderPack rp)
Parameters
rp
RenderPack
UpdateAxisLimits(Plot)
public void UpdateAxisLimits(Plot plot)
Parameters
plot
Plot
ViewCustom(IDataStreamerView)
Display the data using a custom rendering function
public void ViewCustom(IDataStreamerView view)
Parameters
view
IDataStreamerView
ViewScrollLeft()
Display the data using a view that continuously shifts data to the left, placing the newest data on the right.
public void ViewScrollLeft()
ViewScrollRight()
Display the data using a view that continuously shifts data to the right, placing the newest data on the left.
public void ViewScrollRight()
ViewWipeLeft()
Display the data using a view where new data overlaps old data from right to left.
public void ViewWipeLeft()
ViewWipeRight(double)
Display the data using a view where new data overlaps old data from left to right.
public void ViewWipeRight(double blankFraction = 0)
Parameters
blankFraction
double