手动添加绘图表
尽管 Plot.Add 类有许多有用的方法来创建可绘制对象并将其添加到绘图中,但用户可以自行实例化可绘图对象,并使用 Add.Plottable() 将其放置在绘图上。此策略允许用户创建具有自定义外观或行为的自己的绘图表(实现 IPlottable)。
// create a plottable and modify it as desired
ScottPlot.Plottables.LinePlot line = new()
{
Start = new Coordinates(1, 2),
End = new Coordinates(3, 4),
};
// add the custom plottable to the plot
WpfPlot1.Plot.Add.Plottable(line);
WpfPlot1.Refresh();
清除绘图
使用 Clear() 删除所有绘图表。
// add plottables
WpfPlot1.Plot.Add.Signal(Generate.Sin());
WpfPlot1.Plot.Add.Signal(Generate.Cos());
// remove all plottables
WpfPlot1.Plot.Clear();
WpfPlot1.Refresh();
删除 Plottable
可以从绘图中删除单个项目。
// add plottables
var sig1 = WpfPlot1.Plot.Add.Signal(Generate.Sin());
var sig2 = WpfPlot1.Plot.Add.Signal(Generate.Cos());
// remove a specific plottable
WpfPlot1.Plot.Remove(sig1);
WpfPlot1.Refresh();
删除某种类型的所有 Plottable
可以使用单个命令从绘图中删除给定类型的所有绘图表。
WpfPlot1.Plot.Add.Scatter(Generate.Consecutive(51), Generate.Sin(51));
WpfPlot1.Plot.Add.Signal(Generate.Cos());
WpfPlot1.Plot.Add.HorizontalLine(0.75);
// remove every instance of a specific plottable type
WpfPlot1.Plot.Remove<ScottPlot.Plottables.Signal>();
WpfPlot1.Refresh();
移动绘图表
plottable 列表包含将按顺序渲染的所有 plottable。Helper 方法可用于将绘图表移动到最前面。
CoordinateRect wideRect = new(-2, 2, -1, 1);
CoordinateRect tallRect = new(-1, 1, -2, 2);
// rect1 is added first, so plottables added later will appear on top
var rect1 = WpfPlot1.Plot.Add.Rectangle(wideRect);
var rect2 = WpfPlot1.Plot.Add.Rectangle(tallRect);
// plottables may be moved to the front so they always appear on top
WpfPlot1.Plot.MoveToTop(rect1);
WpfPlot1.Refresh();