LightningChart数据可视化工具使用篇52-PointLineSeries3D_点线系列
演示示例: Scatter points; Point lines; Points tracking; Point cloud; Parallel coordinates chart; Multi-colored 3D point-line
PointLineSeries3D 可以在3D空间中展示出点与线。对于点来说,有许多基本的3D形状可用。如果将LineVisible属性设置为true,那么点可以用一条线连接起来。
图:一个PointLineSeries3D 示例, PointStyle的 Shape设置为Sphere.
点样式
点可以显示为真实的3D点,也可以显示为2D形状。
图:PointStyle 属性树。ShapeType可用以在2D与3D形状之间进行切换。
图:对红色十字设置ShapeType = Shape2D. 青色与绿色设置ShapeType = Shape3D.
注意! 2D形状是在所有3D对象上渲染的,它们不支持基于其他对象可见性来隐藏。
线条样式
图:LineStyle properties.
线条可渲染为3D线条,或者一根1像素宽的发线。
当在系列中有许多数据时,建议设置LineOptimization = Hairline 来避免出现性能问题。
图:黄线: LineStyle.LineOptimization = Hairline. 红线: LineStyle.LineOptimization = NormalShaded.
除了LineStyle设置外,PointLineSeries3D还具有ClosedLine -属性,当启用该属性时,会自动连接该系列的第一个和最后一个数据点。从LightningChart 9.0版开始此属性可用。
[C#] 纯文本查看 复制代码 //连接第一点和最后一点[/size]
[size=4]pointLineSeries3D.ClosedLine = true;
添加点
PointLineSeries3D 支持三种不同的点格式:
• Points s属性 (SeriesPoint3D 数组)
• PointsCompact 属性(SeriesPointCompact3D 数组)
• PointsCompactColored 属性(SeriesPointCompactColored3D 数组)
PointsCompact 和PointsCompactColored 结构可非常有效利用内存,可以利用简单的点样式实现多达1亿个数据点可视化。通过PointsType属性可以设置点的格式。
点
使用Points 属性,可以支持所有高级的着色选项。SeriesPoint3D 结构包括以下字段:
double X: X轴值
double Y: Y 轴值
double Z: Z 轴值
Color color: 单个数据点颜色,仅当开启IndividualPointColors或MultiColorLine后可应用。
float sizeFactor: 尺寸系数乘以由PointStyle.Size定义的尺寸大小。仅当开启IndividualPointSizes后可应用。
object Tag: 可自由分配的辅助对象,例如附加一些细节。
系列点必须以代码进行添加。用 AddPoints(…)方法在现有点的末端添加点。
[C#] 纯文本查看 复制代码 SeriesPoint3D[] pointsArray = new SeriesPoint3D [3];
pointsArray [0] = new SeriesPoint3D (50, 50, 50);
pointsArray [1] = new SeriesPoint3D (30, 50, 20);
pointsArray [2] = new SeriesPoint3D (80, 50, 80);
[C#] 纯文本查看 复制代码 chart.View3D.PointLineSeries3D[0].AddPoints(pointsArray); //在末端添加点
若要一次性设置全部系列数据,并覆盖旧的点,可以直接分配新点数组:
[C#] 纯文本查看 复制代码 chart.View3D.PointLineSeries[0].Points = pointsArray; //分配点数组
PointsCompact
PointsCompact 属性能够使内存消耗低,这在拥有大量数据点时非常重要。
SeriesPointCompact3D 结构包括以下字段:
float X: X 轴值
float Y: Y轴值
float Z: Z 轴值
[C#] 纯文本查看 复制代码 SeriesPointCompact3D[] pointsArray = new SeriesPointCompact3D[3];
pointsArray [0] = new SeriesPointCompact3D(50, 50, 50);
pointsArray [1] = new SeriesPointCompact3D(30, 50, 20);
pointsArray [2] = new SeriesPointCompact3D(80, 50, 80);
[C#] 纯文本查看 复制代码 chart.View3D.PointLineSeries3D[0].AddPoints(pointsArray); //在末端添加点
若要一次性设置全部系列数据,并覆盖旧的点,可以直接分配新点数组:
[C#] 纯文本查看 复制代码 chart.View3D.PointLineSeries[0].PointsCompact = pointsArray; //分配点数组
PointsCompactColored
PointsCompactColored 属性能够使内存消耗低,这在拥有大量数据点时非常重要,但仍然可以用单独的颜色对点进行着色。
SeriesPointCompactColoured3D 结构包含以下字段:
float X: X 轴值
float Y: Y 轴值
float Z: Z 轴值
int Color: 点的颜色
[C#] 纯文本查看 复制代码 SeriesPointCompactColored3D[] pointsArray = new SeriesPointCompactColored3D[3];
pointsArray [0] = new SeriesPointCompactColored3D(50, 50, 50, Color.Blue.ToArgb());
pointsArray [1] = new SeriesPointCompactColored3D(30, 50, 20, Color.Red.ToArgb());
pointsArray [2] = new SeriesPointCompactColored3D(80, 50, 80, Color.Green.ToArgb());
chart.View3D.PointLineSeries3D[0].AddPoints(pointsArray); //在末端添加数据
若要一次性设置全部系列数据,并覆盖旧的点,可以直接分配新点数组:
[C#] 纯文本查看 复制代码 chart.View3D.PointLineSeries[0].PointsCompactColored = pointsArray; //分配点数组
单独对点着色
设置 IndividualPointColors = True,点的颜色字段应用,代替了Material.DiffuseColor
图:IndividualPointColors应用示例
注意!当设置PointsType = PointsCompact时,不支持单独点着色。
单独设置点大小
设置 IndividualPointSizes = True, 点的sizeFactor 字段生效。系数乘以在中PointStyle.Size定义的尺寸大小。
图:IndividualPointSizes 应用示例
注意! 当设置PointsType = PointsCompact, 或PointsCompactColored时,不支持单独点着色。
多色线
用给定的数据点颜色对线着色,可设置MultiColorLine = True。图表在相邻点之间内插颜色渐变
图:MultiColorLine开启.
注意! 当设置PointsType = PointsCompact时,不支持MultiColorLine。
显示无数的散点
演示示例: Point cloud
设置PointsOptimization = Pixels,能够显示数量非常大的散点。每个系列点将会渲染为一个单像素。若要显示1000万或1亿个数据点,可使用PointsCompact (参阅本章前面的介绍)或 PointsCompactColored (参阅本章前面的介绍)方法来保持内存需求发挥作用。
图:无数的散点. LineVisible = False, PointsVisible = True, PointsOptimization = Pixels.
图:IndividualPointsColoring = True, 使用PointsCompactColored, LineVisible = False, PointsVisible = True;1.2亿个分散点
用矩形可以最有效地显示数百万个数据点。当使用PointsCompactColored 或PointsCompact, 点的大小可以用来PointStyle.Shape2D.Width 和PointStyle.Shape2D.Height控制。
图: PointStyle.Shape2D,Width = 20 且PointStyle.Shape2D.Height = 10.
关于PointLineSeries3D(3D点线系列)章节就分享到这里了。
如果在实际应用中遇到技术问题或需要帮助,可以扫描下方微信二维码联系LightningChart官方技术支持。
如果您想进一步使用LightningChart数据可视化图形控件,请添加后回复“学习”可免费领取一套全功能版LightningChart数据可视化控件。
后续我会不断更新LightingChart更详细的使用方法,写文不易,还望多多回复关注支持!谢谢! 最新版V10 LightningChart下载地址:猛击下载
|