public interface IChartDataPoint
Example:
@Test
public void chartDataPoint() throws Exception {
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
// Add a line chart, which will have default data that we will use
Shape shape = builder.insertChart(ChartType.LINE, 500.0, 350.0);
Chart chart = shape.getChart();
// Apply diamond-shaped data points to the line of the first series
for (ChartSeries series : chart.getSeries()) {
applyDataPoints(series, 4, MarkerSymbol.DIAMOND, 15);
}
// We can further decorate a series line by smoothing it
chart.getSeries().get(0).setSmooth(true);
// Get the enumerator for the data point collection from one series
Iterator<ChartDataPoint> enumerator = chart.getSeries().get(0).getDataPoints().iterator();
// And use it to go over all the data labels in one series and change their separator
while (enumerator.hasNext()) {
Assert.assertFalse(enumerator.next().getInvertIfNegative());
}
// If the chart looks too busy, we can remove data points one by one
chart.getSeries().get(1).getDataPoints().removeAt(2);
// We can also clear an entire data point collection for one whole series
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 | ||
---|---|---|
abstract boolean | getBubble3D() | |
abstract void | setBubble3D(boolean value) | |
Specifies whether the bubbles in Bubble chart should have a 3-D effect applied to them. | ||
abstract int | getExplosion() | |
abstract void | setExplosion(int value) | |
Specifies the amount the data point shall be moved from the center of the pie. Can be negative, negative means that property is not set and no explosion should be applied. Applies only to Pie charts. | ||
abstract boolean | getInvertIfNegative() | |
abstract void | setInvertIfNegative(boolean value) | |
Specifies whether the parent element shall inverts its colors if the value is negative. | ||
abstract ChartMarker | getMarker() | |
Specifies a data marker. Marker is automatically created when requested. |
Property Getters/Setters Detail |
---|
getBubble3D/setBubble3D | |
public abstract boolean getBubble3D() / public abstract void setBubble3D(boolean value) |
Example:
Shows how to use 3D effects with bubble charts.Document doc = new Document(); DocumentBuilder builder = new DocumentBuilder(doc); // Insert a bubble chart with 3D effects on each bubble Shape shape = builder.insertChart(ChartType.BUBBLE_3_D, 500.0, 350.0); Chart chart = shape.getChart(); Assert.assertTrue(chart.getSeries().get(0).getBubble3D()); // Apply a data label to each bubble that displays the size of its bubble for (int i = 0; i < 3; i++) { chart.getSeries().get(0).hasDataLabels(true); ChartDataLabel cdl = chart.getSeries().get(0).getDataLabels().get(i); cdl.setShowBubbleSize(true); } doc.save(getArtifactsDir() + "Charts.Bubble3D.docx");
getExplosion/setExplosion | |
public abstract int getExplosion() / public abstract void setExplosion(int value) |
Example:
Shows how to manipulate the position of the portions of a pie chart.Document doc = new Document(); DocumentBuilder builder = new DocumentBuilder(doc); Shape shape = builder.insertChart(ChartType.PIE, 500.0, 350.0); Chart chart = shape.getChart(); // In a pie chart, the portions are the data points, which cannot have markers or sizes applied to them // However, we can set this variable to move any individual "slice" away from the center of the chart ChartDataPoint cdp = chart.getSeries().get(0).getDataPoints().add(0); cdp.setExplosion(10); cdp = chart.getSeries().get(0).getDataPoints().add(1); cdp.setExplosion(40); doc.save(getArtifactsDir() + "Charts.PieChartExplosion.docx");
getInvertIfNegative/setInvertIfNegative | |
public abstract boolean getInvertIfNegative() / public abstract void setInvertIfNegative(boolean value) |
Example:
Shows how to customize chart data points.@Test public void chartDataPoint() throws Exception { Document doc = new Document(); DocumentBuilder builder = new DocumentBuilder(doc); // Add a line chart, which will have default data that we will use Shape shape = builder.insertChart(ChartType.LINE, 500.0, 350.0); Chart chart = shape.getChart(); // Apply diamond-shaped data points to the line of the first series for (ChartSeries series : chart.getSeries()) { applyDataPoints(series, 4, MarkerSymbol.DIAMOND, 15); } // We can further decorate a series line by smoothing it chart.getSeries().get(0).setSmooth(true); // Get the enumerator for the data point collection from one series Iterator<ChartDataPoint> enumerator = chart.getSeries().get(0).getDataPoints().iterator(); // And use it to go over all the data labels in one series and change their separator while (enumerator.hasNext()) { Assert.assertFalse(enumerator.next().getInvertIfNegative()); } // If the chart looks too busy, we can remove data points one by one chart.getSeries().get(1).getDataPoints().removeAt(2); // We can also clear an entire data point collection for one whole series 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); } }
getMarker | |
public abstract ChartMarker getMarker() |
Example:
Shows how to customize chart data points.@Test public void chartDataPoint() throws Exception { Document doc = new Document(); DocumentBuilder builder = new DocumentBuilder(doc); // Add a line chart, which will have default data that we will use Shape shape = builder.insertChart(ChartType.LINE, 500.0, 350.0); Chart chart = shape.getChart(); // Apply diamond-shaped data points to the line of the first series for (ChartSeries series : chart.getSeries()) { applyDataPoints(series, 4, MarkerSymbol.DIAMOND, 15); } // We can further decorate a series line by smoothing it chart.getSeries().get(0).setSmooth(true); // Get the enumerator for the data point collection from one series Iterator<ChartDataPoint> enumerator = chart.getSeries().get(0).getDataPoints().iterator(); // And use it to go over all the data labels in one series and change their separator while (enumerator.hasNext()) { Assert.assertFalse(enumerator.next().getInvertIfNegative()); } // If the chart looks too busy, we can remove data points one by one chart.getSeries().get(1).getDataPoints().removeAt(2); // We can also clear an entire data point collection for one whole series 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); } }