WPF Charting Documentation - SciChart WPF Charts SDK v5.x
The Polar 3D Chart Type
NEW to SciChart WPF 3D v5.2!

Polar 3D Charts are provided by the PolarDataSeries3D type.

 

 

 

 

The location of the PolarDataSeries3D is defined by following properties:

 

The size of the PolarDataSeries3D is defined by following properties:

Declaring a Polar 3D Series with random values in the offset map

<s3D:SciChart3DSurface x:Name="sciChart" Grid.Column="1" WorldDimensions="200,50,200" BorderThickness="0">
      <s3D:SciChart3DSurface.Camera>
        <s3D:Camera3D ZoomToFitOnAttach="True"/>
      </s3D:SciChart3DSurface.Camera>
      <s3D:SciChart3DSurface.RenderableSeries>
        <s3D:FreeSurfaceRenderableSeries3D x:Name="polarMeshRenderableSeries"
                                             DrawMeshAs="SolidWireFrame"
                                             Stroke="#77228B22"
                                             ContourStroke="#77228B22"
                                             StrokeThickness="2.0"
                                             Opacity="{Binding ElementName=opacitySlider, Path=Value, Mode=TwoWay}"
                                             MeshColorPalette="{StaticResource HeightColorMap}"
                                             LightingFactor="{Binding ElementName=lightingFactorSlider, Path=Value, Mode=TwoWay}"
                                             PaletteMinMaxMode="Absolute"
                                             PaletteMinimum="0.0, 0.0, 0.0" PaletteMaximum="0.0, 1.0, 0.0" />
      </s3D:SciChart3DSurface.RenderableSeries>
      <s3D:SciChart3DSurface.XAxis>
        <s3D:NumericAxis3D />
      </s3D:SciChart3DSurface.XAxis>
      <s3D:SciChart3DSurface.YAxis>
        <s3D:NumericAxis3D VisibleRange="0.0, 3.0" AutoRange="Never" />
      </s3D:SciChart3DSurface.YAxis>
      <s3D:SciChart3DSurface.ZAxis>
        <s3D:NumericAxis3D />
      </s3D:SciChart3DSurface.ZAxis>
</s3D:SciChart3DSurface>
int countU = 30;
int countV = 10;
var meshDataSeries = new PolarDataSeries3D<double>(countU, countV, 0D, Math.PI * 1.75)
{
    SeriesName = "Polar 3D Mesh",
    A = 1,
    B = 5
};
var random = new Random(0);
for (var u = 0; u < countU; u++)
{
    var weightU = 1.0f - Math.Abs(u / (float)countU * 2.0f - 1.0f);
    for (int v = 0; v < countV; v++)
    {
        var weightV = 1.0f - Math.Abs(v / (float)countV * 2.0f - 1.0f);
        var offset = (float)random.NextDouble();
        meshDataSeries[v, u] = offset * weightU * weightV;
    }
}
polarMeshRenderableSeries.DataSeries = meshDataSeries;

 

 

 

 

 


SCICHART ® is a Registered Trademark in the UK, US and EU. Copyright SciChart Ltd 2011-2018.

Email us to give feedback!