com.aspose.words
Class ChartDataPoint

java.lang.Object
    extended by com.aspose.words.ChartDataPoint
All Implemented Interfaces:
IChartDataPoint, java.lang.Cloneable

public class ChartDataPoint 
extends java.lang.Object

Allows to specify formatting of a single data point on the chart. On a series, the ChartDataPoint object is a member of the ChartDataPointCollection. The ChartDataPointCollection contains a ChartDataPoint object for each point.

Example:

Shows how to work with data points on a line chart.
@Test
public void chartDataPoint() throws Exception {
    Document doc = new Document();
    DocumentBuilder builder = new DocumentBuilder(doc);

    Shape shape = builder.insertChart(ChartType.LINE, 500.0, 350.0);
    Chart chart = shape.getChart();

    Assert.assertEquals(3, chart.getSeries().getCount());
    Assert.assertEquals("Series 1", chart.getSeries().get(0).getName());
    Assert.assertEquals("Series 2", chart.getSeries().get(1).getName());
    Assert.assertEquals("Series 3", chart.getSeries().get(2).getName());

    // Emphasize the chart's data points by making them appear as diamond shapes.
    for (ChartSeries series : chart.getSeries())
        applyDataPoints(series, 4, MarkerSymbol.DIAMOND, 15);

    // Smooth out the line that represents the first data series.
    chart.getSeries().get(0).setSmooth(true);

    // Verify that data points for the first series will not invert their colors if the value is negative.
    Iterator<ChartDataPoint> enumerator = chart.getSeries().get(0).getDataPoints().iterator();
    while (enumerator.hasNext()) {
        Assert.assertFalse(enumerator.next().getInvertIfNegative());
    }

    // For a cleaner looking graph, we can remove data points individually.
    chart.getSeries().get(1).getDataPoints().removeAt(2);

    // We can also strip an entire series of data points at once.
    chart.getSeries().get(2).getDataPoints().clear();

    doc.save(getArtifactsDir() + "Charts.ChartDataPoint.docx");
}

/// <summary>
/// Applies a number of data points to a series.
/// </summary>
private static void applyDataPoints(ChartSeries series, int dataPointsCount, int markerSymbol, int dataPointSize) {
    for (int i = 0; i < dataPointsCount; i++) {
        ChartDataPoint point = series.getDataPoints().add(i);
        point.getMarker().setSymbol(markerSymbol);
        point.getMarker().setSize(dataPointSize);

        Assert.assertEquals(point.getIndex(), i);
    }
}

Property Getters/Setters Summary
booleangetBubble3D()
voidsetBubble3D(boolean value)
          
intgetExplosion()
voidsetExplosion(int value)
          
intgetIndex()
           Index of the data point this object applies formatting to.
booleangetInvertIfNegative()
voidsetInvertIfNegative(boolean value)
          
ChartMarkergetMarker()
          
 
Method Summary
voidclearFormat()
           Clears format of this data point. The properties are set to the default values defined in the parent series.
 

Property Getters/Setters Detail

getBubble3D/setBubble3D

public boolean getBubble3D() / public void setBubble3D(boolean value)

getExplosion/setExplosion

public int getExplosion() / public void setExplosion(int value)

getIndex

public int getIndex()
Index of the data point this object applies formatting to.

Example:

Shows how to work with data points on a line chart.
@Test
public void chartDataPoint() throws Exception {
    Document doc = new Document();
    DocumentBuilder builder = new DocumentBuilder(doc);

    Shape shape = builder.insertChart(ChartType.LINE, 500.0, 350.0);
    Chart chart = shape.getChart();

    Assert.assertEquals(3, chart.getSeries().getCount());
    Assert.assertEquals("Series 1", chart.getSeries().get(0).getName());
    Assert.assertEquals("Series 2", chart.getSeries().get(1).getName());
    Assert.assertEquals("Series 3", chart.getSeries().get(2).getName());

    // Emphasize the chart's data points by making them appear as diamond shapes.
    for (ChartSeries series : chart.getSeries())
        applyDataPoints(series, 4, MarkerSymbol.DIAMOND, 15);

    // Smooth out the line that represents the first data series.
    chart.getSeries().get(0).setSmooth(true);

    // Verify that data points for the first series will not invert their colors if the value is negative.
    Iterator<ChartDataPoint> enumerator = chart.getSeries().get(0).getDataPoints().iterator();
    while (enumerator.hasNext()) {
        Assert.assertFalse(enumerator.next().getInvertIfNegative());
    }

    // For a cleaner looking graph, we can remove data points individually.
    chart.getSeries().get(1).getDataPoints().removeAt(2);

    // We can also strip an entire series of data points at once.
    chart.getSeries().get(2).getDataPoints().clear();

    doc.save(getArtifactsDir() + "Charts.ChartDataPoint.docx");
}

/// <summary>
/// Applies a number of data points to a series.
/// </summary>
private static void applyDataPoints(ChartSeries series, int dataPointsCount, int markerSymbol, int dataPointSize) {
    for (int i = 0; i < dataPointsCount; i++) {
        ChartDataPoint point = series.getDataPoints().add(i);
        point.getMarker().setSymbol(markerSymbol);
        point.getMarker().setSize(dataPointSize);

        Assert.assertEquals(point.getIndex(), i);
    }
}

getInvertIfNegative/setInvertIfNegative

public boolean getInvertIfNegative() / public void setInvertIfNegative(boolean value)

getMarker

public ChartMarker getMarker()

Method Detail

clearFormat

public void clearFormat()
Clears format of this data point. The properties are set to the default values defined in the parent series.

See Also:
          Aspose.Words Documentation - the home page for the Aspose.Words Product Documentation.
          Aspose.Words Support Forum - our preferred method of support.