2

我正在尝试使用ColumnRenderableSeries3D一系列图表来实现,但是使用少量数据点(25x25),这些列几乎是不可见的。在具有更广泛值范围的大量数据点 (100x100) 处,此问题变得更加严重,并出现莫尔图案。可以做些什么来显着增加色谱柱的直径,使它们很容易被看到,从而莫尔条纹消失?

如果相关,这将通过 RemoteDesktop 连接在 Windows Server 2016 上具有 VMware ESXi 6.5 SVGA 适配器的 VM 上呈现。令人惊讶的是,即使没有为 VM 启用 3D 支持,但SciChart.Examples.Demo.exe表示启用了 DirectX 硬件加速。SciChart 的版本是 5.1.0.11405,SharpDX 是 4.0.1。

SciChart3DSurface SciChartSurface3d = new SciChart3DSurface();
XyzDataSeries3D<Double, Double, DateTime> MyXyzDataSeries = new XyzDataSeries3D<Double, Double, DateTime>();

SciChartSurface3d.XAxis = new NumericAxis3D();
SciChartSurface3d.YAxis = new NumericAxis3D();
SciChartSurface3d.ZAxis = new DateTimeAxis3D();
SciChartSurface3d.Camera = new Camera3D() { ZoomToFitOnAttach = true };
SciChartSurface3d.WorldDimensions = new Vector3(200, 100, 200);
SciChartSurface3d.RenderableSeries.Add(new ColumnRenderableSeries3D() { DataSeries= MyXyzDataSeries, ColumnShape = typeof(CubePointMarker3D),  DataPointWidthX = 1.0, Opacity = 1.0 });
SciChartSurface3d.BorderThickness = new Thickness(0);`
SomeMethodToLoadTheDataSeries();

25x25 100x10025x25 100x100

编辑

更改DataPointWidthXDataPointWidth没有帮助。宽度为 1.0: 在此处输入图像描述

4

1 回答 1

2

列宽定义有两种模式:

  • 首先,默认称为MaxNonOverlapping。在这种模式下,在任何列有足够空间不与其他列重叠的情况下,计算可能的最大宽度。
  • 第二个称为FixedSize。在此模式下,列的宽度由ColumnRenderableSeries3D.CoulmnFixedSize属性中的值定义。

模式的定义是在ColumnRenderableSeries3D.ColumnSpacingMode属性上执行的。以下是如何设置固定大小柱形图的示例:

var renderableSeries3D = new ColumnRenderableSeries3D();
renderableSeries3D.ColumnSpacingMode = ColumnSpacingMode.FixedSize;
renderableSeries3D.CoulmnFixedSize = 25;

注意,CoulmnFixedSize 属性的值表示坐标空间。因此它与SciChart3DSurface.WorldDimensions相关。您可以在此处找到有关坐标空间的更多信息。

于 2018-05-22T08:20:17.040 回答