LightningChart.NET完全由GPU加速,并且性能经过优化,可用于实时显示海量数据-超过10亿个数据点。LightningChart包括广泛的2D,高级3D,Polar,Smith,3D饼/甜甜圈,地理地图和GIS图表以及适用于科学,工程,医学,航空,贸易,能源和其他领域的体位功能。
LightningChart.NET重新加入在线订购,SignalTools,12个月,WPF版本原价4105元,现价只需3499元,现在抢购立享优惠!立即购买>>
LightningChart.NET最新试用版 LightningChart JS最新试用版
问:这里的编 (在下方和附件中的X轴)不正确。我建议,在这种情况下,您应该再使用一位小数。可以从您这边解决这个问题吗知道我可以使用自定义标签格式,但是对于所有可能的数字组合(您已经实现了),我必须实现整个逻辑。

回复:我相信控制小数位数的最简单方法是通过LabelsNumberFormat。它会影响所有轴标签,因此只需设置一次。如果禁用了AutoFormatLabels,它将起作用。
_chart.ViewXY.XAxes [0] .AutoFormatLabels = false;
_chart.ViewXY.XAxes [0] .LabelsNumberFormat =“ 0.0”; //始终显示一位小数
在这种情况下,仅禁用AutoFormatLabels就足够了,因为“ 0.0”实际上是LabelsNumberFormat的默认值。
LabelsNumberFormat可用于控制小数点前的数字,在以下情况下显示01.000、10.000、100.000等
._chart.ViewXY.XAxes [0] .LabelsNumberFormat =“ 00.000”;
问:我知道我可以控制小数位,但我真的很喜欢它会自动四舍五入。如果数字少10倍,则格式“ 0.0”会出现相同的问题。如果数字少100倍,它将仅显示零。
如果没有其他方法,我将必须在FormatValueLabel中为所有可能的值和所有可能的值范围实现标签格式。
在图片中,还有另一个问题,这次不是丢失值,而是1个值两次。我知道它是从哪里来的,这里再加上一个小数点就可以解决这个问题。这是通过给majordiv提供一个让图形决定在哪里放置刻度的功能来完成的。之前的一个是使用CustomTicks完成的。

回复:您可以检查FormatValueLabel -event是否适合您的情况。此事件内部的逻辑适用于每个轴标签。我认为您不需要分别为每个值和范围应用逻辑。相反,您可以例如计算标签中的小数位数,然后基于该数字调用Math.Round().例如:
代码: 全选
_chart.ViewXY.XAxes[0].AutoFormatLabels = false;_chart.ViewXY.XAxes[0].FormatValueLabel += Example_FormatValueLabel;private string Example_FormatValueLabel(object sender, FormatValueLabelEventArgs e){ int decimals = e.Value.ToString().Substring(e.Value.ToString().IndexOf(".") + 1).Length; if (decimals > 15) // To prevent a possible OutOfRange exception. decimals = 15; return Math.Round(e.Value, decimals).ToString();}
您可以通过更改小数整数(即小数-1)来更改上述精度。
绘制图表后,您可以使用
System.Drawing.RectangleF[] aBarRect = chart.ViewXY.BarSeries[barIndex].GetBarRectangles();
如果该有任何疑问,请联系客服以获取更多信息。
如果您对该图表控件感兴趣,加入图表控件QQ交流群:
想要购买LightningChart正版授权,或了解更多产品信息请点击【咨询在线客服】
标签:
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!