com.aspose.words
Class ChartMarker

java.lang.Object
    extended by com.aspose.words.ChartMarker
All Implemented Interfaces:
java.lang.Cloneable

public class ChartMarker 
extends java.lang.Object

Represents a chart data marker.

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 clear format individually.
    chart.getSeries().get(1).getDataPoints().get(2).clearFormat();

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

    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().get(i);
        point.getMarker().setSymbol(markerSymbol);
        point.getMarker().setSize(dataPointSize);

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

Property Getters/Setters Summary
ChartFormatgetFormat()
           Provides access to fill and line formatting of this marker.
intgetSize()
voidsetSize(int value)
           Gets or sets chart marker size. Default value is 7.
intgetSymbol()
voidsetSymbol(int value)
           Gets or sets chart marker symbol. The value of the property is MarkerSymbol integer constant.
 

Property Getters/Setters Detail

getFormat

public ChartFormat getFormat()
Provides access to fill and line formatting of this marker.

Example:

Show how to set marker formatting.
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);

Shape shape = builder.insertChart(ChartType.SCATTER, 432.0, 252.0);
Chart chart = shape.getChart();

// Delete default generated series.
chart.getSeries().clear();
ChartSeries series = chart.getSeries().add("AW Series 1", new double[] { 0.7, 1.8, 2.6, 3.9 },
        new double[] { 2.7, 3.2, 0.8, 1.7 });

// Set marker formatting.
series.getMarker().setSize(40);
series.getMarker().setSymbol(MarkerSymbol.SQUARE);
ChartDataPointCollection dataPoints = series.getDataPoints();
dataPoints.get(0).getMarker().getFormat().getFill().presetTextured(PresetTexture.DENIM);
dataPoints.get(0).getMarker().getFormat().getStroke().setForeColor(Color.YELLOW);
dataPoints.get(0).getMarker().getFormat().getStroke().setBackColor(Color.RED);
dataPoints.get(1).getMarker().getFormat().getFill().presetTextured(PresetTexture.WATER_DROPLETS);
dataPoints.get(1).getMarker().getFormat().getStroke().setForeColor(Color.YELLOW);
dataPoints.get(1).getMarker().getFormat().getStroke().setVisible(false);
dataPoints.get(2).getMarker().getFormat().getFill().presetTextured(PresetTexture.GREEN_MARBLE);
dataPoints.get(2).getMarker().getFormat().getStroke().setForeColor(Color.YELLOW);
dataPoints.get(3).getMarker().getFormat().getFill().presetTextured(PresetTexture.OAK);
dataPoints.get(3).getMarker().getFormat().getStroke().setForeColor(Color.YELLOW);
dataPoints.get(3).getMarker().getFormat().getStroke().setTransparency(0.5);

doc.save(getArtifactsDir() + "Charts.MarkerFormatting.docx");

getSize/setSize

public int getSize() / public void setSize(int value)
Gets or sets chart marker size. Default value is 7.

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 clear format individually.
    chart.getSeries().get(1).getDataPoints().get(2).clearFormat();

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

    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().get(i);
        point.getMarker().setSymbol(markerSymbol);
        point.getMarker().setSize(dataPointSize);

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

getSymbol/setSymbol

public int getSymbol() / public void setSymbol(int value)
Gets or sets chart marker symbol. The value of the property is MarkerSymbol integer constant.

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 clear format individually.
    chart.getSeries().get(1).getDataPoints().get(2).clearFormat();

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

    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().get(i);
        point.getMarker().setSymbol(markerSymbol);
        point.getMarker().setSize(dataPointSize);

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

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