Class DataLogger
- Namespace
- ScottPlot.Plottables
- Assembly
- ScottPlot.dll
public class DataLogger : IPlottable, IManagesAxisLimits, IHasLine, IHasMarker, IHasLegendText
- Inheritance
-
DataLogger
- Implements
- Inherited Members
- Extension Methods
Constructors
DataLogger(List<Coordinates>?)
public DataLogger(List<Coordinates>? coordinates = null)
Parameters
coordinates
List<Coordinates>
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
AxisManager
public IAxisLimitManager AxisManager { get; set; }
Property Value
Color
public Color Color { get; set; }
Property Value
ConnectStyle
The style of lines to use when connecting points.
public ConnectStyle ConnectStyle { get; set; }
Property Value
Data
public DataLoggerSource Data { get; }
Property Value
HasNewData
public bool HasNewData { get; }
Property Value
InvertX
public bool InvertX { get; set; }
Property Value
InvertY
public bool InvertY { get; set; }
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
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
Rotated
public bool Rotated { get; set; }
Property Value
Methods
Add(Coordinates)
public void Add(Coordinates coordinates)
Parameters
coordinates
Coordinates
Add(Coordinates[])
public void Add(Coordinates[] coordinates)
Parameters
coordinates
Coordinates[]
Add(IEnumerable<double>)
public void Add(IEnumerable<double> ys)
Parameters
ys
IEnumerable<double>
Add(double)
public void Add(double y)
Parameters
y
double
Add(double, double)
public void Add(double x, double y)
Parameters
Add(double[], double[])
public void Add(double[] xs, double[] ys)
Parameters
Clear()
public void Clear()
GetAxisLimits()
Return the 2D area (in coordinate space) occupied by the data contained in this plottable
public AxisLimits GetAxisLimits()
Returns
GetNearest(Coordinates, PixelRect, float)
Get the data point nearest to the given mouse location.
public DataPoint GetNearest(Coordinates mouseLocation, PixelRect dataRect, float maxDistance = 15)
Parameters
mouseLocation
CoordinatesMouse location
dataRect
PixelRectData rectangle from RenderDetails
maxDistance
floatMaximum distance to the point
Returns
GetNearestX(Coordinates, PixelRect, float)
Get the data point nearest to the given mouse location (only considering X values).
public DataPoint GetNearestX(Coordinates mouseLocation, PixelRect dataRect, float maxDistance = 15)
Parameters
mouseLocation
CoordinatesMouse location
dataRect
PixelRectData rectangle from RenderDetails
maxDistance
floatMaximum X distance to the point
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
ViewFull()
Automatically expand the axis as needed to ensure the full dataset is visible before each render.
public void ViewFull()
ViewJump(double, double)
Automatically adjust the axis limits to track the newest data as it comes in. The axis limits will appear to "jump" when new data runs off the screen.
public void ViewJump(double width = 1000, double paddingFraction = 0.5)
Parameters
ViewSlide(double)
Automatically adjust the axis limits to track the newest data as it comes in. The axis limits will appear to "slide" continuously as new data is added.
public void ViewSlide(double width = 1000)
Parameters
width
double