高性能图表控件LightningChart有关闪电图问题解答
作者:互联网
LightningChart.NET完全由GPU加速,并且性能经过优化,可用于实时显示海量数据-超过10亿个数据点。LightningChart包括广泛的2D,高级3D,Polar,Smith,3D饼/甜甜圈,地理地图和GIS图表以及适用于科学,工程,医学,航空,贸易,能源和其他领域的体位功能。
问:在DataGrid上查看墨西哥的地图,在LightningChart上查看地图?否,您可以通过vb.net,agradeceríasime dan un ejemplo的“ com sarsar los datos de la tablaalgráfico”网站。
答:例如,仅通过在循环中读取DataGridViewUnit的值,将其分配为SeriesPoint X和Y值,就应该可以做到这一点。当前,在VisualBasic .Net中我们没有关于此的示例。但是,我可以在此处附上一个用WinForms完成的小示例,它应该使您知道如何完成此操作。
在此示例中,我们创建一个FreeformPointLineSeries,它从DataGridView获取其数据值(每行都有X和Y值的两列)。每次用户在网格中更改/添加值时,CellValueChanged事件中的值都会更新。基本上所有这一切都需要一些空检查和值解析。请注意,每次创建新的数据点列表都不是最有效的方法,最好只更改与值已更改的单元格相对应的数据点的X / Y值。
_chart = new LightningChartUltimate();
_chart.BeginUpdate();
_chart.Parent = splitContainer1.Panel2;
_chart.Dock = DockStyle.Fill;
FreeformPointLineSeries pls = new FreeformPointLineSeries(_chart.ViewXY, _chart.ViewXY.XAxes[0], _chart.ViewXY.YAxes[0]);
pls.LineStyle.Color = Color.LimeGreen;
pls.PointsVisible = true;
_chart.ViewXY.FreeformPointLineSeries.Add(pls);
问:Y en el casodelGráfico3D¿Cómoseria吗?
答:完全相同的逻辑也适用于3D图形。唯一的区别是分配新数据点时使用的是PointLineSeries3D而不是FreeformPointLineseries,使用SeriesPoint3D而不是SeriesPoint。这意味着您必须为数据点分配三个值(X, Y,Z)。因此,很有可能在DataGridView中应该有第三列。
问:现有的阿尔及利亚优先权要求控制数据网格视图有问题吗?
答:无法说出无法创建3D图表的确切原因是什么您可能缺少一些属性设置,例如将有效收视设置为View3D这是相同的的WinForms测试项目,现在已转换为使用三维图。
_chart = new LightningChartUltimate();
_chart.BeginUpdate();
_chart.Parent = splitContainer1.Panel2;
_chart.Dock = DockStyle.Fill;
_chart.ActiveView = ActiveView.View3D;
PointLineSeries3D pls = new PointLineSeries3D(_chart.View3D, Axis3DBinding.Primary, Axis3DBinding.Primary, Axis3DBinding.Primary);
pls.LineStyle.Color = Color.Yellow;
pls.PointsVisible = true;
pls.PointStyle.Shape3D = PointShape3D.Sphere;
pls.Material.DiffuseColor = Color.Red;
_chart.View3D.PointLineSeries3D.Add(pls);
_chart.EndUpdate();
private void dataGridView1_CellValueChanged(object sender, DataGridViewCellEventArgs e)
{
if (_chart != null)
{
List<SeriesPoint3D> points = new List<SeriesPoint3D>();
double d1, d2, d3;
for (int i = 0; i < dataGridView1.Rows.Count; i++)
{
if (dataGridView1.Rows[i].Cells[0].Value != null && dataGridView1.Rows[i].Cells[1].Value != null && dataGridView1.Rows[i].Cells[2].Value != null)
{
if (double.TryParse(dataGridView1.Rows[i].Cells[0].Value.ToString(), out d1) && double.TryParse(dataGridView1.Rows[i].Cells[1].Value.ToString(), out d2)
&& double.TryParse(dataGridView1.Rows[i].Cells[2].Value.ToString(), out d3))
{
SeriesPoint3D pnt = new SeriesPoint3D();
pnt.X = d1;
pnt.Y = d2;
pnt.Z = d3;
points.Add(pnt);
}
}
}
_chart.View3D.PointLineSeries3D[0].Points = points.ToArray();
_chart.View3D.PointLineSeries3D[0].InvalidateData();
}
}
关于读取/填充数据。LightningChart主要是可视化组件,它本身没有接口可连接到MySQL或Oracle等数据库。从技术上讲,LightningChart不到乎如何将数据提供给图表,但通常来说,从某些特定来源读取数据的功能有限。我们的演示应用程序具有“大数据打开速度测试”的示例,该示例显示了如何保存和读取我们的文件格式。但是,“数据库”有无限的可能性,我们无法因此,用户应开发自己的例程以从其具有的任何源读取数据,刹车将数据添加到图表。数据源或从中读取数据的方法完全不会影响图表本身。
如果该有任何疑问,请联系客服以获取更多信息。
如果您对该图表控件感兴趣,欢迎加入图表控件QQ交流群:740060302
标签:控件,Rows,pls,chart,问题解答,图表,dataGridView1,LightningChart 来源: https://blog.csdn.net/RoffeyYang/article/details/116535236