高性能图表控件LightningChart如何停用轴时堆叠的空白空间?

LightningChart.NET完全由GPU加速,并且性能经过优化,可用于实时显示海量数据-超过10亿个数据点。 LightningChart包括广泛的2D,高级3D,Polar,Smith,3D饼/甜甜圈,地理地图和GIS图表以及适用于科学,工程,医学,航空,贸易,能源和其他领域的体绘制功能。

点击下载LightningChart.NET最新试用版

问:在我的图表中,我堆叠了两个y轴,这两个轴都是可见的,但是如果我使轴不可见,则会导致空白。现在,我希望另一个轴充满整个区域。
我该如何实现我想要的行为。也可能是图表包含超过2个y轴…,因此其他y轴必须共享新的可用空白空间并适合。

#带两个Y轴的堆叠YAxesLayout

高性能图表控件LightningChart如何停用轴时堆叠的空白空间?

#当前行为:停用底部y轴时出现空白

高性能图表控件LightningChart如何停用轴时堆叠的空白空间?

#预期行为:第一个轴填充整个区域
高性能图表控件LightningChart如何停用轴时堆叠的空白空间?

回复:YAxesLayout。停用轴时堆叠的空白空间

只需从ViewXY.YAxes集合中拉出Y轴就足够了
m_chart.ViewXY.YAxes.RemoveAt(1);
问:这对我有用,但是可能很复杂。
在我的应用程序中,用户可以随时添加和删除y轴。
因此,我必须记下轴和索引,然后再次将轴添加到正确的位置。
我曾希望可以通过“ Visible = false / true”轻松显示/隐藏该轴,但是空白会困扰我

回复:在我看来,这听起来像个错误,因为我看不到保持空白的好处。
是否计划在将来实现此行为,以使轴必须移开才能使用空白空间?

问:不幸的是,对于我们来说,要改变行为而不让很多用户不安,是没有简单的方法。许多开发人员希望隐藏轴,但显示绑定到该隐藏轴的数据。如果我们隐藏该轴的垂直空间,则不会显示数据。

回复:我遇到了一个非常类似的问题,我的解决方案是使用segements而不是堆叠轴。我要显示的任何系列都分配了一个细分。我不想显示的任何系列都将“轴和系列”的可见标志设置为false并转储到最后一段中。

关于分段布局的一些技巧可以在下面找到 :

如果您想隐藏/折叠YAxis /细分,最好使用分段布局。段只有一个属性,即高度。与其他细分市场相比,它是一个关系大小。它不是用屏幕像素定义的,因为它们需要根据图表的大小重新缩放。

通过设置yAxis.SegmentIndex属性,可以为Y轴分配一个线段。SegmentIndex是AxisLayout.Segments集合中的索引。

_chart.ViewXY.AxisLayout.YAxesLayout = YAxesLayout.Segmented;

您可以使用以下方法创建细分:

_chart.ViewXY.AxisLayout.Segments.Add(new YAxisSegment());
_chart.ViewXY.AxisLayout.Segments.Add(new YAxisSegment());

然后将Y轴分配给线段:

_chart.ViewXY.YAxes[0].SegmentIndex = 0;
_chart.ViewXY.YAxes[1].SegmentIndex = 1;

段的高度可以通过其高度属性进行更改。注意,“高度”是指相对于其他线段的相对高度。将其设置为0将基本上隐藏线段,并使其他线段更大。

_chart.ViewXY.AxisLayout.Segments[3].Height = 0;

如果隐藏的细分中有一些系列,即使隐藏了细分之后,它们可能仍然会稍微可见。因此,最好将这些系列的Visible -property设置为false,以便也将它们隐藏。
在我们的演示应用程序中,有几个使用分段布局的示例:“ Y轴布局”,“带分割器的分段”等。

如果对此有任何疑问,请联系客服以获取更多信息。

想要购买LightningChart正版授权,或了解更多产品信息请点击【咨询在线客服

上一篇:SQLServer性能分析


下一篇:最近在用的一款可视化工具