java.lang.Object
com.aspose.words.ChartAxis
public class ChartAxis
To learn more, visit the Working with Charts documentation article. Example:
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
Shape shape = builder.insertChart(ChartType.COLUMN, 500.0, 300.0);
Chart chart = shape.getChart();
// Clear the chart's demo data series to start with a clean chart.
chart.getSeries().clear();
// Insert a chart series with categories for the X-axis and respective numeric values for the Y-axis.
chart.getSeries().add("Aspose Test Series",
new String[]{"Word", "PDF", "Excel", "GoogleDocs", "Note"},
new double[]{640.0, 320.0, 280.0, 120.0, 150.0});
// Chart axes have various options that can change their appearance,
// such as their direction, major/minor unit ticks, and tick marks.
ChartAxis xAxis = chart.getAxisX();
xAxis.setCategoryType(AxisCategoryType.CATEGORY);
xAxis.setCrosses(AxisCrosses.MINIMUM);
xAxis.setReverseOrder(false);
xAxis.setMajorTickMark(AxisTickMark.INSIDE);
xAxis.setMinorTickMark(AxisTickMark.CROSS);
xAxis.setMajorUnit(10.0d);
xAxis.setMinorUnit(15.0d);
xAxis.getTickLabels().setOffset(50);
xAxis.getTickLabels().setPosition(AxisTickLabelPosition.LOW);
xAxis.getTickLabels().isAutoSpacing(false);
xAxis.setTickMarkSpacing(1);
ChartAxis yAxis = chart.getAxisY();
yAxis.setCategoryType(AxisCategoryType.AUTOMATIC);
yAxis.setCrosses(AxisCrosses.MAXIMUM);
yAxis.setReverseOrder(true);
yAxis.setMajorTickMark(AxisTickMark.INSIDE);
yAxis.setMinorTickMark(AxisTickMark.CROSS);
yAxis.setMajorUnit(100.0d);
yAxis.setMinorUnit(20.0d);
yAxis.getTickLabels().setPosition(AxisTickLabelPosition.NEXT_TO_AXIS);
yAxis.getTickLabels().setAlignment(ParagraphAlignment.CENTER);
yAxis.getTickLabels().getFont().setColor(Color.RED);
yAxis.getTickLabels().setSpacing(1);
// Column charts do not have a Z-axis.
Assert.assertNull(chart.getAxisZ());
doc.save(getArtifactsDir() + "Charts.AxisProperties.docx");
| Property Getters/Setters Summary | ||
|---|---|---|
boolean | getAxisBetweenCategories() | |
void | setAxisBetweenCategories(boolean value) | |
| Gets or sets a flag indicating whether the value axis crosses the category axis between categories. | ||
int | getBaseTimeUnit() | |
void | setBaseTimeUnit(int value) | |
| Returns or sets the smallest time unit that is represented on the time category axis. The value of the property is AxisTimeUnit integer constant. | ||
int | getCategoryType() | |
void | setCategoryType(int value) | |
| Gets or sets type of the category axis. The value of the property is AxisCategoryType integer constant. | ||
int | getCrosses() | |
void | setCrosses(int value) | |
| Specifies how this axis crosses the perpendicular axis. The value of the property is AxisCrosses integer constant. | ||
double | getCrossesAt() | |
void | setCrossesAt(double value) | |
| Specifies where on the perpendicular axis the axis crosses. | ||
AxisDisplayUnit | getDisplayUnit() | |
| Specifies the scaling value of the display units for the value axis. | ||
DocumentBase | getDocument() | |
| Returns the document containing the parent chart. | ||
ChartFormat | getFormat() | |
| Provides access to line formatting of the axis and fill of the tick labels. | ||
boolean | hasMajorGridlines() | |
void | hasMajorGridlines(boolean value) | |
| Gets or sets a flag indicating whether the axis has major gridlines. | ||
boolean | hasMinorGridlines() | |
void | hasMinorGridlines(boolean value) | |
| Gets or sets a flag indicating whether the axis has minor gridlines. | ||
boolean | getHidden() | |
void | setHidden(boolean value) | |
| Gets or sets a flag indicating whether this axis is hidden or not. | ||
int | getMajorTickMark() | |
void | setMajorTickMark(int value) | |
| Returns or sets the major tick marks. The value of the property is AxisTickMark integer constant. | ||
double | getMajorUnit() | |
void | setMajorUnit(double value) | |
| Returns or sets the distance between major tick marks. | ||
boolean | getMajorUnitIsAuto() | |
void | setMajorUnitIsAuto(boolean value) | |
| Gets or sets a flag indicating whether default distance between major tick marks shall be used. | ||
int | getMajorUnitScale() | |
void | setMajorUnitScale(int value) | |
| Returns or sets the scale value for major tick marks on the time category axis. The value of the property is AxisTimeUnit integer constant. | ||
int | getMinorTickMark() | |
void | setMinorTickMark(int value) | |
| Returns or sets the minor tick marks for the axis. The value of the property is AxisTickMark integer constant. | ||
double | getMinorUnit() | |
void | setMinorUnit(double value) | |
| Returns or sets the distance between minor tick marks. | ||
boolean | getMinorUnitIsAuto() | |
void | setMinorUnitIsAuto(boolean value) | |
| Gets or sets a flag indicating whether default distance between minor tick marks shall be used. | ||
int | getMinorUnitScale() | |
void | setMinorUnitScale(int value) | |
| Returns or sets the scale value for minor tick marks on the time category axis. The value of the property is AxisTimeUnit integer constant. | ||
ChartNumberFormat | getNumberFormat() | |
|
Returns a |
||
boolean | getReverseOrder() | |
void | setReverseOrder(boolean value) | |
| Returns or sets a flag indicating whether values of axis should be displayed in reverse order, i.e. from max to min. | ||
AxisScaling | getScaling() | |
| Provides access to the scaling options of the axis. | ||
int | getTickLabelAlignment() | |
void | setTickLabelAlignment(int value) | |
| |
||
int | getTickLabelOffset() | |
void | setTickLabelOffset(int value) | |
| |
||
int | getTickLabelPosition() | |
void | setTickLabelPosition(int value) | |
| |
||
AxisTickLabels | getTickLabels() | |
| Provides access to the properties of the axis tick mark labels. | ||
int | getTickLabelSpacing() | |
void | setTickLabelSpacing(int value) | |
| |
||
boolean | getTickLabelSpacingIsAuto() | |
void | setTickLabelSpacingIsAuto(boolean value) | |
| |
||
int | getTickMarkSpacing() | |
void | setTickMarkSpacing(int value) | |
| Gets or sets the interval, at which tick marks are drawn. | ||
ChartAxisTitle | getTitle() | |
| Provides access to the axis title properties. | ||
int | getType() | |
| Returns type of the axis. The value of the property is ChartAxisType integer constant. | ||
| Property Getters/Setters Detail |
|---|
getAxisBetweenCategories/setAxisBetweenCategories | |
public boolean getAxisBetweenCategories() / public void setAxisBetweenCategories(boolean value) | |
Example:
Shows how to get a graph axis to cross at a custom location.
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
Shape shape = builder.insertChart(ChartType.COLUMN, 450.0, 250.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());
// For column charts, the Y-axis crosses at zero by default,
// which means that columns for all values below zero point down to represent negative values.
// We can set a different value for the Y-axis crossing. In this case, we will set it to 3.
ChartAxis axis = chart.getAxisX();
axis.setCrosses(AxisCrosses.CUSTOM);
axis.setCrossesAt(3.0);
axis.setAxisBetweenCategories(true);
doc.save(getArtifactsDir() + "Charts.AxisCross.docx");getBaseTimeUnit/setBaseTimeUnit | |
public int getBaseTimeUnit() / public void setBaseTimeUnit(int value) | |
Example:
Shows how to insert chart with date/time values.
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
Shape shape = builder.insertChart(ChartType.LINE, 500.0, 300.0);
Chart chart = shape.getChart();
// Clear the chart's demo data series to start with a clean chart.
chart.getSeries().clear();
// Add a custom series containing date/time values for the X-axis, and respective decimal values for the Y-axis.
chart.getSeries().add("Aspose Test Series",
new Date[]
{
DocumentHelper.createDate(2017, 11, 6), DocumentHelper.createDate(2017, 11, 9), DocumentHelper.createDate(2017, 11, 15),
DocumentHelper.createDate(2017, 11, 21), DocumentHelper.createDate(2017, 11, 25), DocumentHelper.createDate(2017, 11, 29)
},
new double[]{1.2, 0.3, 2.1, 2.9, 4.2, 5.3});
// Set lower and upper bounds for the X-axis.
ChartAxis xAxis = chart.getAxisX();
Date datetimeMin = DocumentHelper.createDate(2017, 11, 5);
xAxis.getScaling().setMinimum(new AxisBound(datetimeMin));
Date datetimeMax = DocumentHelper.createDate(2017, 12, 3);
xAxis.getScaling().setMaximum(new AxisBound(datetimeMax));
// Set the major units of the X-axis to a week, and the minor units to a day.
xAxis.setBaseTimeUnit(AxisTimeUnit.DAYS);
xAxis.setMajorUnit(7.0d);
xAxis.setMajorTickMark(AxisTickMark.CROSS);
xAxis.setMinorUnit(1.0d);
xAxis.setMinorTickMark(AxisTickMark.OUTSIDE);
xAxis.hasMajorGridlines(true);
xAxis.hasMinorGridlines(true);
// Define Y-axis properties for decimal values.
ChartAxis yAxis = chart.getAxisY();
yAxis.getTickLabels().setPosition(AxisTickLabelPosition.HIGH);
yAxis.setMajorUnit(100.0d);
yAxis.setMinorUnit(50.0d);
yAxis.getDisplayUnit().setUnit(AxisBuiltInUnit.HUNDREDS);
yAxis.getScaling().setMinimum(new AxisBound(100.0));
yAxis.getScaling().setMaximum(new AxisBound(700.0));
yAxis.hasMajorGridlines(true);
yAxis.hasMinorGridlines(true);
doc.save(getArtifactsDir() + "Charts.DateTimeValues.docx");getCategoryType/setCategoryType | |
public int getCategoryType() / public void setCategoryType(int value) | |
Example:
Shows how to insert a chart and modify the appearance of its axes.
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
Shape shape = builder.insertChart(ChartType.COLUMN, 500.0, 300.0);
Chart chart = shape.getChart();
// Clear the chart's demo data series to start with a clean chart.
chart.getSeries().clear();
// Insert a chart series with categories for the X-axis and respective numeric values for the Y-axis.
chart.getSeries().add("Aspose Test Series",
new String[]{"Word", "PDF", "Excel", "GoogleDocs", "Note"},
new double[]{640.0, 320.0, 280.0, 120.0, 150.0});
// Chart axes have various options that can change their appearance,
// such as their direction, major/minor unit ticks, and tick marks.
ChartAxis xAxis = chart.getAxisX();
xAxis.setCategoryType(AxisCategoryType.CATEGORY);
xAxis.setCrosses(AxisCrosses.MINIMUM);
xAxis.setReverseOrder(false);
xAxis.setMajorTickMark(AxisTickMark.INSIDE);
xAxis.setMinorTickMark(AxisTickMark.CROSS);
xAxis.setMajorUnit(10.0d);
xAxis.setMinorUnit(15.0d);
xAxis.getTickLabels().setOffset(50);
xAxis.getTickLabels().setPosition(AxisTickLabelPosition.LOW);
xAxis.getTickLabels().isAutoSpacing(false);
xAxis.setTickMarkSpacing(1);
ChartAxis yAxis = chart.getAxisY();
yAxis.setCategoryType(AxisCategoryType.AUTOMATIC);
yAxis.setCrosses(AxisCrosses.MAXIMUM);
yAxis.setReverseOrder(true);
yAxis.setMajorTickMark(AxisTickMark.INSIDE);
yAxis.setMinorTickMark(AxisTickMark.CROSS);
yAxis.setMajorUnit(100.0d);
yAxis.setMinorUnit(20.0d);
yAxis.getTickLabels().setPosition(AxisTickLabelPosition.NEXT_TO_AXIS);
yAxis.getTickLabels().setAlignment(ParagraphAlignment.CENTER);
yAxis.getTickLabels().getFont().setColor(Color.RED);
yAxis.getTickLabels().setSpacing(1);
// Column charts do not have a Z-axis.
Assert.assertNull(chart.getAxisZ());
doc.save(getArtifactsDir() + "Charts.AxisProperties.docx");getCrosses/setCrosses | |
public int getCrosses() / public void setCrosses(int value) | |
Default value is
The property is not supported by MS Office 2016 new charts.
Example:
Shows how to insert a chart and modify the appearance of its axes.
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
Shape shape = builder.insertChart(ChartType.COLUMN, 500.0, 300.0);
Chart chart = shape.getChart();
// Clear the chart's demo data series to start with a clean chart.
chart.getSeries().clear();
// Insert a chart series with categories for the X-axis and respective numeric values for the Y-axis.
chart.getSeries().add("Aspose Test Series",
new String[]{"Word", "PDF", "Excel", "GoogleDocs", "Note"},
new double[]{640.0, 320.0, 280.0, 120.0, 150.0});
// Chart axes have various options that can change their appearance,
// such as their direction, major/minor unit ticks, and tick marks.
ChartAxis xAxis = chart.getAxisX();
xAxis.setCategoryType(AxisCategoryType.CATEGORY);
xAxis.setCrosses(AxisCrosses.MINIMUM);
xAxis.setReverseOrder(false);
xAxis.setMajorTickMark(AxisTickMark.INSIDE);
xAxis.setMinorTickMark(AxisTickMark.CROSS);
xAxis.setMajorUnit(10.0d);
xAxis.setMinorUnit(15.0d);
xAxis.getTickLabels().setOffset(50);
xAxis.getTickLabels().setPosition(AxisTickLabelPosition.LOW);
xAxis.getTickLabels().isAutoSpacing(false);
xAxis.setTickMarkSpacing(1);
ChartAxis yAxis = chart.getAxisY();
yAxis.setCategoryType(AxisCategoryType.AUTOMATIC);
yAxis.setCrosses(AxisCrosses.MAXIMUM);
yAxis.setReverseOrder(true);
yAxis.setMajorTickMark(AxisTickMark.INSIDE);
yAxis.setMinorTickMark(AxisTickMark.CROSS);
yAxis.setMajorUnit(100.0d);
yAxis.setMinorUnit(20.0d);
yAxis.getTickLabels().setPosition(AxisTickLabelPosition.NEXT_TO_AXIS);
yAxis.getTickLabels().setAlignment(ParagraphAlignment.CENTER);
yAxis.getTickLabels().getFont().setColor(Color.RED);
yAxis.getTickLabels().setSpacing(1);
// Column charts do not have a Z-axis.
Assert.assertNull(chart.getAxisZ());
doc.save(getArtifactsDir() + "Charts.AxisProperties.docx");getCrossesAt/setCrossesAt | |
public double getCrossesAt() / public void setCrossesAt(double value) | |
The property has effect only if
The units are determined by the type of axis. When the axis is a value axis, the value of the property is a decimal number on the value axis. When the axis is a time category axis, the value is defined as an integer number of days relative to the base date (30/12/1899). For a text category axis, the value is an integer category number, starting with 1 as the first category.
Example:
Shows how to get a graph axis to cross at a custom location.
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
Shape shape = builder.insertChart(ChartType.COLUMN, 450.0, 250.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());
// For column charts, the Y-axis crosses at zero by default,
// which means that columns for all values below zero point down to represent negative values.
// We can set a different value for the Y-axis crossing. In this case, we will set it to 3.
ChartAxis axis = chart.getAxisX();
axis.setCrosses(AxisCrosses.CUSTOM);
axis.setCrossesAt(3.0);
axis.setAxisBetweenCategories(true);
doc.save(getArtifactsDir() + "Charts.AxisCross.docx");getDisplayUnit | |
public AxisDisplayUnit getDisplayUnit() | |
Example:
Shows how to manipulate the tick marks and displayed values of a chart axis.
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
Shape shape = builder.insertChart(ChartType.SCATTER, 450.0, 250.0);
Chart chart = shape.getChart();
Assert.assertEquals(1, chart.getSeries().getCount());
Assert.assertEquals("Y-Values", chart.getSeries().get(0).getName());
// Set the minor tick marks of the Y-axis to point away from the plot area,
// and the major tick marks to cross the axis.
ChartAxis axis = chart.getAxisY();
axis.setMajorTickMark(AxisTickMark.CROSS);
axis.setMinorTickMark(AxisTickMark.OUTSIDE);
// Set they Y-axis to show a major tick every 10 units, and a minor tick every 1 unit.
axis.setMajorUnit(10.0);
axis.setMinorUnit(1.0);
// Set the Y-axis bounds to -10 and 20.
// This Y-axis will now display 4 major tick marks and 27 minor tick marks.
axis.getScaling().setMinimum(new AxisBound(-10));
axis.getScaling().setMaximum(new AxisBound(20.0));
// For the X-axis, set the major tick marks at every 10 units,
// every minor tick mark at 2.5 units.
axis = chart.getAxisX();
axis.setMajorUnit(10.0);
axis.setMinorUnit(2.5);
// Configure both types of tick marks to appear inside the graph plot area.
axis.setMajorTickMark(AxisTickMark.INSIDE);
axis.setMinorTickMark(AxisTickMark.INSIDE);
// Set the X-axis bounds so that the X-axis spans 5 major tick marks and 12 minor tick marks.
axis.getScaling().setMinimum(new AxisBound(-10));
axis.getScaling().setMaximum(new AxisBound(30.0));
axis.getTickLabels().setAlignment(ParagraphAlignment.RIGHT);
Assert.assertEquals(1, axis.getTickLabels().getSpacing());
// Set the tick labels to display their value in millions.
axis.getDisplayUnit().setUnit(AxisBuiltInUnit.MILLIONS);
// We can set a more specific value by which tick labels will display their values.
// This statement is equivalent to the one above.
axis.getDisplayUnit().setCustomUnit(1000000.0);
doc.save(getArtifactsDir() + "Charts.AxisDisplayUnit.docx");getDocument | |
public DocumentBase getDocument() | |
getFormat | |
public ChartFormat getFormat() | |
hasMajorGridlines/hasMajorGridlines | |
public boolean hasMajorGridlines() / public void hasMajorGridlines(boolean value) | |
Example:
Shows how to insert chart with date/time values.
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
Shape shape = builder.insertChart(ChartType.LINE, 500.0, 300.0);
Chart chart = shape.getChart();
// Clear the chart's demo data series to start with a clean chart.
chart.getSeries().clear();
// Add a custom series containing date/time values for the X-axis, and respective decimal values for the Y-axis.
chart.getSeries().add("Aspose Test Series",
new Date[]
{
DocumentHelper.createDate(2017, 11, 6), DocumentHelper.createDate(2017, 11, 9), DocumentHelper.createDate(2017, 11, 15),
DocumentHelper.createDate(2017, 11, 21), DocumentHelper.createDate(2017, 11, 25), DocumentHelper.createDate(2017, 11, 29)
},
new double[]{1.2, 0.3, 2.1, 2.9, 4.2, 5.3});
// Set lower and upper bounds for the X-axis.
ChartAxis xAxis = chart.getAxisX();
Date datetimeMin = DocumentHelper.createDate(2017, 11, 5);
xAxis.getScaling().setMinimum(new AxisBound(datetimeMin));
Date datetimeMax = DocumentHelper.createDate(2017, 12, 3);
xAxis.getScaling().setMaximum(new AxisBound(datetimeMax));
// Set the major units of the X-axis to a week, and the minor units to a day.
xAxis.setBaseTimeUnit(AxisTimeUnit.DAYS);
xAxis.setMajorUnit(7.0d);
xAxis.setMajorTickMark(AxisTickMark.CROSS);
xAxis.setMinorUnit(1.0d);
xAxis.setMinorTickMark(AxisTickMark.OUTSIDE);
xAxis.hasMajorGridlines(true);
xAxis.hasMinorGridlines(true);
// Define Y-axis properties for decimal values.
ChartAxis yAxis = chart.getAxisY();
yAxis.getTickLabels().setPosition(AxisTickLabelPosition.HIGH);
yAxis.setMajorUnit(100.0d);
yAxis.setMinorUnit(50.0d);
yAxis.getDisplayUnit().setUnit(AxisBuiltInUnit.HUNDREDS);
yAxis.getScaling().setMinimum(new AxisBound(100.0));
yAxis.getScaling().setMaximum(new AxisBound(700.0));
yAxis.hasMajorGridlines(true);
yAxis.hasMinorGridlines(true);
doc.save(getArtifactsDir() + "Charts.DateTimeValues.docx");hasMinorGridlines/hasMinorGridlines | |
public boolean hasMinorGridlines() / public void hasMinorGridlines(boolean value) | |
Example:
Shows how to insert chart with date/time values.
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
Shape shape = builder.insertChart(ChartType.LINE, 500.0, 300.0);
Chart chart = shape.getChart();
// Clear the chart's demo data series to start with a clean chart.
chart.getSeries().clear();
// Add a custom series containing date/time values for the X-axis, and respective decimal values for the Y-axis.
chart.getSeries().add("Aspose Test Series",
new Date[]
{
DocumentHelper.createDate(2017, 11, 6), DocumentHelper.createDate(2017, 11, 9), DocumentHelper.createDate(2017, 11, 15),
DocumentHelper.createDate(2017, 11, 21), DocumentHelper.createDate(2017, 11, 25), DocumentHelper.createDate(2017, 11, 29)
},
new double[]{1.2, 0.3, 2.1, 2.9, 4.2, 5.3});
// Set lower and upper bounds for the X-axis.
ChartAxis xAxis = chart.getAxisX();
Date datetimeMin = DocumentHelper.createDate(2017, 11, 5);
xAxis.getScaling().setMinimum(new AxisBound(datetimeMin));
Date datetimeMax = DocumentHelper.createDate(2017, 12, 3);
xAxis.getScaling().setMaximum(new AxisBound(datetimeMax));
// Set the major units of the X-axis to a week, and the minor units to a day.
xAxis.setBaseTimeUnit(AxisTimeUnit.DAYS);
xAxis.setMajorUnit(7.0d);
xAxis.setMajorTickMark(AxisTickMark.CROSS);
xAxis.setMinorUnit(1.0d);
xAxis.setMinorTickMark(AxisTickMark.OUTSIDE);
xAxis.hasMajorGridlines(true);
xAxis.hasMinorGridlines(true);
// Define Y-axis properties for decimal values.
ChartAxis yAxis = chart.getAxisY();
yAxis.getTickLabels().setPosition(AxisTickLabelPosition.HIGH);
yAxis.setMajorUnit(100.0d);
yAxis.setMinorUnit(50.0d);
yAxis.getDisplayUnit().setUnit(AxisBuiltInUnit.HUNDREDS);
yAxis.getScaling().setMinimum(new AxisBound(100.0));
yAxis.getScaling().setMaximum(new AxisBound(700.0));
yAxis.hasMajorGridlines(true);
yAxis.hasMinorGridlines(true);
doc.save(getArtifactsDir() + "Charts.DateTimeValues.docx");getHidden/setHidden | |
public boolean getHidden() / public void setHidden(boolean value) | |
false.
Example:
Shows how to hide chart axes.
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
Shape shape = builder.insertChart(ChartType.LINE, 500.0, 300.0);
Chart chart = shape.getChart();
// Clear the chart's demo data series to start with a clean chart.
chart.getSeries().clear();
// Add a custom series with categories for the X-axis, and respective decimal values for the Y-axis.
chart.getSeries().add("AW Series 1",
new String[]{"Item 1", "Item 2", "Item 3", "Item 4", "Item 5"},
new double[]{1.2, 0.3, 2.1, 2.9, 4.2});
// Hide the chart axes to simplify the appearance of the chart.
chart.getAxisX().setHidden(true);
chart.getAxisY().setHidden(true);
doc.save(getArtifactsDir() + "Charts.HideChartAxis.docx");getMajorTickMark/setMajorTickMark | |
public int getMajorTickMark() / public void setMajorTickMark(int value) | |
Example:
Shows how to insert a chart and modify the appearance of its axes.
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
Shape shape = builder.insertChart(ChartType.COLUMN, 500.0, 300.0);
Chart chart = shape.getChart();
// Clear the chart's demo data series to start with a clean chart.
chart.getSeries().clear();
// Insert a chart series with categories for the X-axis and respective numeric values for the Y-axis.
chart.getSeries().add("Aspose Test Series",
new String[]{"Word", "PDF", "Excel", "GoogleDocs", "Note"},
new double[]{640.0, 320.0, 280.0, 120.0, 150.0});
// Chart axes have various options that can change their appearance,
// such as their direction, major/minor unit ticks, and tick marks.
ChartAxis xAxis = chart.getAxisX();
xAxis.setCategoryType(AxisCategoryType.CATEGORY);
xAxis.setCrosses(AxisCrosses.MINIMUM);
xAxis.setReverseOrder(false);
xAxis.setMajorTickMark(AxisTickMark.INSIDE);
xAxis.setMinorTickMark(AxisTickMark.CROSS);
xAxis.setMajorUnit(10.0d);
xAxis.setMinorUnit(15.0d);
xAxis.getTickLabels().setOffset(50);
xAxis.getTickLabels().setPosition(AxisTickLabelPosition.LOW);
xAxis.getTickLabels().isAutoSpacing(false);
xAxis.setTickMarkSpacing(1);
ChartAxis yAxis = chart.getAxisY();
yAxis.setCategoryType(AxisCategoryType.AUTOMATIC);
yAxis.setCrosses(AxisCrosses.MAXIMUM);
yAxis.setReverseOrder(true);
yAxis.setMajorTickMark(AxisTickMark.INSIDE);
yAxis.setMinorTickMark(AxisTickMark.CROSS);
yAxis.setMajorUnit(100.0d);
yAxis.setMinorUnit(20.0d);
yAxis.getTickLabels().setPosition(AxisTickLabelPosition.NEXT_TO_AXIS);
yAxis.getTickLabels().setAlignment(ParagraphAlignment.CENTER);
yAxis.getTickLabels().getFont().setColor(Color.RED);
yAxis.getTickLabels().setSpacing(1);
// Column charts do not have a Z-axis.
Assert.assertNull(chart.getAxisZ());
doc.save(getArtifactsDir() + "Charts.AxisProperties.docx");getMajorUnit/setMajorUnit | |
public double getMajorUnit() / public void setMajorUnit(double value) | |
Valid range of a value is greater than zero. The property has effect for time category and value axes.
Setting this property sets the false.
Example:
Shows how to insert a chart and modify the appearance of its axes.
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
Shape shape = builder.insertChart(ChartType.COLUMN, 500.0, 300.0);
Chart chart = shape.getChart();
// Clear the chart's demo data series to start with a clean chart.
chart.getSeries().clear();
// Insert a chart series with categories for the X-axis and respective numeric values for the Y-axis.
chart.getSeries().add("Aspose Test Series",
new String[]{"Word", "PDF", "Excel", "GoogleDocs", "Note"},
new double[]{640.0, 320.0, 280.0, 120.0, 150.0});
// Chart axes have various options that can change their appearance,
// such as their direction, major/minor unit ticks, and tick marks.
ChartAxis xAxis = chart.getAxisX();
xAxis.setCategoryType(AxisCategoryType.CATEGORY);
xAxis.setCrosses(AxisCrosses.MINIMUM);
xAxis.setReverseOrder(false);
xAxis.setMajorTickMark(AxisTickMark.INSIDE);
xAxis.setMinorTickMark(AxisTickMark.CROSS);
xAxis.setMajorUnit(10.0d);
xAxis.setMinorUnit(15.0d);
xAxis.getTickLabels().setOffset(50);
xAxis.getTickLabels().setPosition(AxisTickLabelPosition.LOW);
xAxis.getTickLabels().isAutoSpacing(false);
xAxis.setTickMarkSpacing(1);
ChartAxis yAxis = chart.getAxisY();
yAxis.setCategoryType(AxisCategoryType.AUTOMATIC);
yAxis.setCrosses(AxisCrosses.MAXIMUM);
yAxis.setReverseOrder(true);
yAxis.setMajorTickMark(AxisTickMark.INSIDE);
yAxis.setMinorTickMark(AxisTickMark.CROSS);
yAxis.setMajorUnit(100.0d);
yAxis.setMinorUnit(20.0d);
yAxis.getTickLabels().setPosition(AxisTickLabelPosition.NEXT_TO_AXIS);
yAxis.getTickLabels().setAlignment(ParagraphAlignment.CENTER);
yAxis.getTickLabels().getFont().setColor(Color.RED);
yAxis.getTickLabels().setSpacing(1);
// Column charts do not have a Z-axis.
Assert.assertNull(chart.getAxisZ());
doc.save(getArtifactsDir() + "Charts.AxisProperties.docx");getMajorUnitIsAuto/setMajorUnitIsAuto | |
public boolean getMajorUnitIsAuto() / public void setMajorUnitIsAuto(boolean value) | |
Example:
Shows how to manipulate the tick marks and displayed values of a chart axis.
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
Shape shape = builder.insertChart(ChartType.SCATTER, 450.0, 250.0);
Chart chart = shape.getChart();
Assert.assertEquals(1, chart.getSeries().getCount());
Assert.assertEquals("Y-Values", chart.getSeries().get(0).getName());
// Set the minor tick marks of the Y-axis to point away from the plot area,
// and the major tick marks to cross the axis.
ChartAxis axis = chart.getAxisY();
axis.setMajorTickMark(AxisTickMark.CROSS);
axis.setMinorTickMark(AxisTickMark.OUTSIDE);
// Set they Y-axis to show a major tick every 10 units, and a minor tick every 1 unit.
axis.setMajorUnit(10.0);
axis.setMinorUnit(1.0);
// Set the Y-axis bounds to -10 and 20.
// This Y-axis will now display 4 major tick marks and 27 minor tick marks.
axis.getScaling().setMinimum(new AxisBound(-10));
axis.getScaling().setMaximum(new AxisBound(20.0));
// For the X-axis, set the major tick marks at every 10 units,
// every minor tick mark at 2.5 units.
axis = chart.getAxisX();
axis.setMajorUnit(10.0);
axis.setMinorUnit(2.5);
// Configure both types of tick marks to appear inside the graph plot area.
axis.setMajorTickMark(AxisTickMark.INSIDE);
axis.setMinorTickMark(AxisTickMark.INSIDE);
// Set the X-axis bounds so that the X-axis spans 5 major tick marks and 12 minor tick marks.
axis.getScaling().setMinimum(new AxisBound(-10));
axis.getScaling().setMaximum(new AxisBound(30.0));
axis.getTickLabels().setAlignment(ParagraphAlignment.RIGHT);
Assert.assertEquals(1, axis.getTickLabels().getSpacing());
// Set the tick labels to display their value in millions.
axis.getDisplayUnit().setUnit(AxisBuiltInUnit.MILLIONS);
// We can set a more specific value by which tick labels will display their values.
// This statement is equivalent to the one above.
axis.getDisplayUnit().setCustomUnit(1000000.0);
doc.save(getArtifactsDir() + "Charts.AxisDisplayUnit.docx");getMajorUnitScale/setMajorUnitScale | |
public int getMajorUnitScale() / public void setMajorUnitScale(int value) | |
Example:
Shows how to manipulate the tick marks and displayed values of a chart axis.
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
Shape shape = builder.insertChart(ChartType.SCATTER, 450.0, 250.0);
Chart chart = shape.getChart();
Assert.assertEquals(1, chart.getSeries().getCount());
Assert.assertEquals("Y-Values", chart.getSeries().get(0).getName());
// Set the minor tick marks of the Y-axis to point away from the plot area,
// and the major tick marks to cross the axis.
ChartAxis axis = chart.getAxisY();
axis.setMajorTickMark(AxisTickMark.CROSS);
axis.setMinorTickMark(AxisTickMark.OUTSIDE);
// Set they Y-axis to show a major tick every 10 units, and a minor tick every 1 unit.
axis.setMajorUnit(10.0);
axis.setMinorUnit(1.0);
// Set the Y-axis bounds to -10 and 20.
// This Y-axis will now display 4 major tick marks and 27 minor tick marks.
axis.getScaling().setMinimum(new AxisBound(-10));
axis.getScaling().setMaximum(new AxisBound(20.0));
// For the X-axis, set the major tick marks at every 10 units,
// every minor tick mark at 2.5 units.
axis = chart.getAxisX();
axis.setMajorUnit(10.0);
axis.setMinorUnit(2.5);
// Configure both types of tick marks to appear inside the graph plot area.
axis.setMajorTickMark(AxisTickMark.INSIDE);
axis.setMinorTickMark(AxisTickMark.INSIDE);
// Set the X-axis bounds so that the X-axis spans 5 major tick marks and 12 minor tick marks.
axis.getScaling().setMinimum(new AxisBound(-10));
axis.getScaling().setMaximum(new AxisBound(30.0));
axis.getTickLabels().setAlignment(ParagraphAlignment.RIGHT);
Assert.assertEquals(1, axis.getTickLabels().getSpacing());
// Set the tick labels to display their value in millions.
axis.getDisplayUnit().setUnit(AxisBuiltInUnit.MILLIONS);
// We can set a more specific value by which tick labels will display their values.
// This statement is equivalent to the one above.
axis.getDisplayUnit().setCustomUnit(1000000.0);
doc.save(getArtifactsDir() + "Charts.AxisDisplayUnit.docx");getMinorTickMark/setMinorTickMark | |
public int getMinorTickMark() / public void setMinorTickMark(int value) | |
Example:
Shows how to insert a chart and modify the appearance of its axes.
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
Shape shape = builder.insertChart(ChartType.COLUMN, 500.0, 300.0);
Chart chart = shape.getChart();
// Clear the chart's demo data series to start with a clean chart.
chart.getSeries().clear();
// Insert a chart series with categories for the X-axis and respective numeric values for the Y-axis.
chart.getSeries().add("Aspose Test Series",
new String[]{"Word", "PDF", "Excel", "GoogleDocs", "Note"},
new double[]{640.0, 320.0, 280.0, 120.0, 150.0});
// Chart axes have various options that can change their appearance,
// such as their direction, major/minor unit ticks, and tick marks.
ChartAxis xAxis = chart.getAxisX();
xAxis.setCategoryType(AxisCategoryType.CATEGORY);
xAxis.setCrosses(AxisCrosses.MINIMUM);
xAxis.setReverseOrder(false);
xAxis.setMajorTickMark(AxisTickMark.INSIDE);
xAxis.setMinorTickMark(AxisTickMark.CROSS);
xAxis.setMajorUnit(10.0d);
xAxis.setMinorUnit(15.0d);
xAxis.getTickLabels().setOffset(50);
xAxis.getTickLabels().setPosition(AxisTickLabelPosition.LOW);
xAxis.getTickLabels().isAutoSpacing(false);
xAxis.setTickMarkSpacing(1);
ChartAxis yAxis = chart.getAxisY();
yAxis.setCategoryType(AxisCategoryType.AUTOMATIC);
yAxis.setCrosses(AxisCrosses.MAXIMUM);
yAxis.setReverseOrder(true);
yAxis.setMajorTickMark(AxisTickMark.INSIDE);
yAxis.setMinorTickMark(AxisTickMark.CROSS);
yAxis.setMajorUnit(100.0d);
yAxis.setMinorUnit(20.0d);
yAxis.getTickLabels().setPosition(AxisTickLabelPosition.NEXT_TO_AXIS);
yAxis.getTickLabels().setAlignment(ParagraphAlignment.CENTER);
yAxis.getTickLabels().getFont().setColor(Color.RED);
yAxis.getTickLabels().setSpacing(1);
// Column charts do not have a Z-axis.
Assert.assertNull(chart.getAxisZ());
doc.save(getArtifactsDir() + "Charts.AxisProperties.docx");getMinorUnit/setMinorUnit | |
public double getMinorUnit() / public void setMinorUnit(double value) | |
Valid range of a value is greater than zero. The property has effect for time category and value axes.
Setting this property sets the false.
Example:
Shows how to insert a chart and modify the appearance of its axes.
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
Shape shape = builder.insertChart(ChartType.COLUMN, 500.0, 300.0);
Chart chart = shape.getChart();
// Clear the chart's demo data series to start with a clean chart.
chart.getSeries().clear();
// Insert a chart series with categories for the X-axis and respective numeric values for the Y-axis.
chart.getSeries().add("Aspose Test Series",
new String[]{"Word", "PDF", "Excel", "GoogleDocs", "Note"},
new double[]{640.0, 320.0, 280.0, 120.0, 150.0});
// Chart axes have various options that can change their appearance,
// such as their direction, major/minor unit ticks, and tick marks.
ChartAxis xAxis = chart.getAxisX();
xAxis.setCategoryType(AxisCategoryType.CATEGORY);
xAxis.setCrosses(AxisCrosses.MINIMUM);
xAxis.setReverseOrder(false);
xAxis.setMajorTickMark(AxisTickMark.INSIDE);
xAxis.setMinorTickMark(AxisTickMark.CROSS);
xAxis.setMajorUnit(10.0d);
xAxis.setMinorUnit(15.0d);
xAxis.getTickLabels().setOffset(50);
xAxis.getTickLabels().setPosition(AxisTickLabelPosition.LOW);
xAxis.getTickLabels().isAutoSpacing(false);
xAxis.setTickMarkSpacing(1);
ChartAxis yAxis = chart.getAxisY();
yAxis.setCategoryType(AxisCategoryType.AUTOMATIC);
yAxis.setCrosses(AxisCrosses.MAXIMUM);
yAxis.setReverseOrder(true);
yAxis.setMajorTickMark(AxisTickMark.INSIDE);
yAxis.setMinorTickMark(AxisTickMark.CROSS);
yAxis.setMajorUnit(100.0d);
yAxis.setMinorUnit(20.0d);
yAxis.getTickLabels().setPosition(AxisTickLabelPosition.NEXT_TO_AXIS);
yAxis.getTickLabels().setAlignment(ParagraphAlignment.CENTER);
yAxis.getTickLabels().getFont().setColor(Color.RED);
yAxis.getTickLabels().setSpacing(1);
// Column charts do not have a Z-axis.
Assert.assertNull(chart.getAxisZ());
doc.save(getArtifactsDir() + "Charts.AxisProperties.docx");getMinorUnitIsAuto/setMinorUnitIsAuto | |
public boolean getMinorUnitIsAuto() / public void setMinorUnitIsAuto(boolean value) | |
Example:
Shows how to manipulate the tick marks and displayed values of a chart axis.
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
Shape shape = builder.insertChart(ChartType.SCATTER, 450.0, 250.0);
Chart chart = shape.getChart();
Assert.assertEquals(1, chart.getSeries().getCount());
Assert.assertEquals("Y-Values", chart.getSeries().get(0).getName());
// Set the minor tick marks of the Y-axis to point away from the plot area,
// and the major tick marks to cross the axis.
ChartAxis axis = chart.getAxisY();
axis.setMajorTickMark(AxisTickMark.CROSS);
axis.setMinorTickMark(AxisTickMark.OUTSIDE);
// Set they Y-axis to show a major tick every 10 units, and a minor tick every 1 unit.
axis.setMajorUnit(10.0);
axis.setMinorUnit(1.0);
// Set the Y-axis bounds to -10 and 20.
// This Y-axis will now display 4 major tick marks and 27 minor tick marks.
axis.getScaling().setMinimum(new AxisBound(-10));
axis.getScaling().setMaximum(new AxisBound(20.0));
// For the X-axis, set the major tick marks at every 10 units,
// every minor tick mark at 2.5 units.
axis = chart.getAxisX();
axis.setMajorUnit(10.0);
axis.setMinorUnit(2.5);
// Configure both types of tick marks to appear inside the graph plot area.
axis.setMajorTickMark(AxisTickMark.INSIDE);
axis.setMinorTickMark(AxisTickMark.INSIDE);
// Set the X-axis bounds so that the X-axis spans 5 major tick marks and 12 minor tick marks.
axis.getScaling().setMinimum(new AxisBound(-10));
axis.getScaling().setMaximum(new AxisBound(30.0));
axis.getTickLabels().setAlignment(ParagraphAlignment.RIGHT);
Assert.assertEquals(1, axis.getTickLabels().getSpacing());
// Set the tick labels to display their value in millions.
axis.getDisplayUnit().setUnit(AxisBuiltInUnit.MILLIONS);
// We can set a more specific value by which tick labels will display their values.
// This statement is equivalent to the one above.
axis.getDisplayUnit().setCustomUnit(1000000.0);
doc.save(getArtifactsDir() + "Charts.AxisDisplayUnit.docx");getMinorUnitScale/setMinorUnitScale | |
public int getMinorUnitScale() / public void setMinorUnitScale(int value) | |
Example:
Shows how to manipulate the tick marks and displayed values of a chart axis.
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
Shape shape = builder.insertChart(ChartType.SCATTER, 450.0, 250.0);
Chart chart = shape.getChart();
Assert.assertEquals(1, chart.getSeries().getCount());
Assert.assertEquals("Y-Values", chart.getSeries().get(0).getName());
// Set the minor tick marks of the Y-axis to point away from the plot area,
// and the major tick marks to cross the axis.
ChartAxis axis = chart.getAxisY();
axis.setMajorTickMark(AxisTickMark.CROSS);
axis.setMinorTickMark(AxisTickMark.OUTSIDE);
// Set they Y-axis to show a major tick every 10 units, and a minor tick every 1 unit.
axis.setMajorUnit(10.0);
axis.setMinorUnit(1.0);
// Set the Y-axis bounds to -10 and 20.
// This Y-axis will now display 4 major tick marks and 27 minor tick marks.
axis.getScaling().setMinimum(new AxisBound(-10));
axis.getScaling().setMaximum(new AxisBound(20.0));
// For the X-axis, set the major tick marks at every 10 units,
// every minor tick mark at 2.5 units.
axis = chart.getAxisX();
axis.setMajorUnit(10.0);
axis.setMinorUnit(2.5);
// Configure both types of tick marks to appear inside the graph plot area.
axis.setMajorTickMark(AxisTickMark.INSIDE);
axis.setMinorTickMark(AxisTickMark.INSIDE);
// Set the X-axis bounds so that the X-axis spans 5 major tick marks and 12 minor tick marks.
axis.getScaling().setMinimum(new AxisBound(-10));
axis.getScaling().setMaximum(new AxisBound(30.0));
axis.getTickLabels().setAlignment(ParagraphAlignment.RIGHT);
Assert.assertEquals(1, axis.getTickLabels().getSpacing());
// Set the tick labels to display their value in millions.
axis.getDisplayUnit().setUnit(AxisBuiltInUnit.MILLIONS);
// We can set a more specific value by which tick labels will display their values.
// This statement is equivalent to the one above.
axis.getDisplayUnit().setCustomUnit(1000000.0);
doc.save(getArtifactsDir() + "Charts.AxisDisplayUnit.docx");getNumberFormat | |
public ChartNumberFormat getNumberFormat() | |
Example:
Shows how to set formatting for chart values.
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
Shape shape = builder.insertChart(ChartType.COLUMN, 500.0, 300.0);
Chart chart = shape.getChart();
// Clear the chart's demo data series to start with a clean chart.
chart.getSeries().clear();
// Add a custom series to the chart with categories for the X-axis,
// and large respective numeric values for the Y-axis.
chart.getSeries().add("Aspose Test Series",
new String[]{"Word", "PDF", "Excel", "GoogleDocs", "Note"},
new double[]{1900000.0, 850000.0, 2100000.0, 600000.0, 1500000.0});
// Set the number format of the Y-axis tick labels to not group digits with commas.
chart.getAxisY().getNumberFormat().setFormatCode("#,##0");
// This flag can override the above value and draw the number format from the source cell.
Assert.assertFalse(chart.getAxisY().getNumberFormat().isLinkedToSource());
doc.save(getArtifactsDir() + "Charts.SetNumberFormatToChartAxis.docx");getReverseOrder/setReverseOrder | |
public boolean getReverseOrder() / public void setReverseOrder(boolean value) | |
false.
Example:
Shows how to insert a chart and modify the appearance of its axes.
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
Shape shape = builder.insertChart(ChartType.COLUMN, 500.0, 300.0);
Chart chart = shape.getChart();
// Clear the chart's demo data series to start with a clean chart.
chart.getSeries().clear();
// Insert a chart series with categories for the X-axis and respective numeric values for the Y-axis.
chart.getSeries().add("Aspose Test Series",
new String[]{"Word", "PDF", "Excel", "GoogleDocs", "Note"},
new double[]{640.0, 320.0, 280.0, 120.0, 150.0});
// Chart axes have various options that can change their appearance,
// such as their direction, major/minor unit ticks, and tick marks.
ChartAxis xAxis = chart.getAxisX();
xAxis.setCategoryType(AxisCategoryType.CATEGORY);
xAxis.setCrosses(AxisCrosses.MINIMUM);
xAxis.setReverseOrder(false);
xAxis.setMajorTickMark(AxisTickMark.INSIDE);
xAxis.setMinorTickMark(AxisTickMark.CROSS);
xAxis.setMajorUnit(10.0d);
xAxis.setMinorUnit(15.0d);
xAxis.getTickLabels().setOffset(50);
xAxis.getTickLabels().setPosition(AxisTickLabelPosition.LOW);
xAxis.getTickLabels().isAutoSpacing(false);
xAxis.setTickMarkSpacing(1);
ChartAxis yAxis = chart.getAxisY();
yAxis.setCategoryType(AxisCategoryType.AUTOMATIC);
yAxis.setCrosses(AxisCrosses.MAXIMUM);
yAxis.setReverseOrder(true);
yAxis.setMajorTickMark(AxisTickMark.INSIDE);
yAxis.setMinorTickMark(AxisTickMark.CROSS);
yAxis.setMajorUnit(100.0d);
yAxis.setMinorUnit(20.0d);
yAxis.getTickLabels().setPosition(AxisTickLabelPosition.NEXT_TO_AXIS);
yAxis.getTickLabels().setAlignment(ParagraphAlignment.CENTER);
yAxis.getTickLabels().getFont().setColor(Color.RED);
yAxis.getTickLabels().setSpacing(1);
// Column charts do not have a Z-axis.
Assert.assertNull(chart.getAxisZ());
doc.save(getArtifactsDir() + "Charts.AxisProperties.docx");getScaling | |
public AxisScaling getScaling() | |
Example:
Shows how to insert chart with date/time values.
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
Shape shape = builder.insertChart(ChartType.LINE, 500.0, 300.0);
Chart chart = shape.getChart();
// Clear the chart's demo data series to start with a clean chart.
chart.getSeries().clear();
// Add a custom series containing date/time values for the X-axis, and respective decimal values for the Y-axis.
chart.getSeries().add("Aspose Test Series",
new Date[]
{
DocumentHelper.createDate(2017, 11, 6), DocumentHelper.createDate(2017, 11, 9), DocumentHelper.createDate(2017, 11, 15),
DocumentHelper.createDate(2017, 11, 21), DocumentHelper.createDate(2017, 11, 25), DocumentHelper.createDate(2017, 11, 29)
},
new double[]{1.2, 0.3, 2.1, 2.9, 4.2, 5.3});
// Set lower and upper bounds for the X-axis.
ChartAxis xAxis = chart.getAxisX();
Date datetimeMin = DocumentHelper.createDate(2017, 11, 5);
xAxis.getScaling().setMinimum(new AxisBound(datetimeMin));
Date datetimeMax = DocumentHelper.createDate(2017, 12, 3);
xAxis.getScaling().setMaximum(new AxisBound(datetimeMax));
// Set the major units of the X-axis to a week, and the minor units to a day.
xAxis.setBaseTimeUnit(AxisTimeUnit.DAYS);
xAxis.setMajorUnit(7.0d);
xAxis.setMajorTickMark(AxisTickMark.CROSS);
xAxis.setMinorUnit(1.0d);
xAxis.setMinorTickMark(AxisTickMark.OUTSIDE);
xAxis.hasMajorGridlines(true);
xAxis.hasMinorGridlines(true);
// Define Y-axis properties for decimal values.
ChartAxis yAxis = chart.getAxisY();
yAxis.getTickLabels().setPosition(AxisTickLabelPosition.HIGH);
yAxis.setMajorUnit(100.0d);
yAxis.setMinorUnit(50.0d);
yAxis.getDisplayUnit().setUnit(AxisBuiltInUnit.HUNDREDS);
yAxis.getScaling().setMinimum(new AxisBound(100.0));
yAxis.getScaling().setMaximum(new AxisBound(700.0));
yAxis.hasMajorGridlines(true);
yAxis.hasMinorGridlines(true);
doc.save(getArtifactsDir() + "Charts.DateTimeValues.docx");getTickLabelAlignment/setTickLabelAlignment | |
@Deprecated public int getTickLabelAlignment() / public void setTickLabelAlignment(int value) | |
This property has effect only for multi-line labels.
Default value is
Example:
Shows how to manipulate the tick marks and displayed values of a chart axis.
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
Shape shape = builder.insertChart(ChartType.SCATTER, 450.0, 250.0);
Chart chart = shape.getChart();
Assert.assertEquals(1, chart.getSeries().getCount());
Assert.assertEquals("Y-Values", chart.getSeries().get(0).getName());
// Set the minor tick marks of the Y-axis to point away from the plot area,
// and the major tick marks to cross the axis.
ChartAxis axis = chart.getAxisY();
axis.setMajorTickMark(AxisTickMark.CROSS);
axis.setMinorTickMark(AxisTickMark.OUTSIDE);
// Set they Y-axis to show a major tick every 10 units, and a minor tick every 1 unit.
axis.setMajorUnit(10.0);
axis.setMinorUnit(1.0);
// Set the Y-axis bounds to -10 and 20.
// This Y-axis will now display 4 major tick marks and 27 minor tick marks.
axis.getScaling().setMinimum(new AxisBound(-10));
axis.getScaling().setMaximum(new AxisBound(20.0));
// For the X-axis, set the major tick marks at every 10 units,
// every minor tick mark at 2.5 units.
axis = chart.getAxisX();
axis.setMajorUnit(10.0);
axis.setMinorUnit(2.5);
// Configure both types of tick marks to appear inside the graph plot area.
axis.setMajorTickMark(AxisTickMark.INSIDE);
axis.setMinorTickMark(AxisTickMark.INSIDE);
// Set the X-axis bounds so that the X-axis spans 5 major tick marks and 12 minor tick marks.
axis.getScaling().setMinimum(new AxisBound(-10));
axis.getScaling().setMaximum(new AxisBound(30.0));
axis.getTickLabels().setAlignment(ParagraphAlignment.RIGHT);
Assert.assertEquals(1, axis.getTickLabels().getSpacing());
// Set the tick labels to display their value in millions.
axis.getDisplayUnit().setUnit(AxisBuiltInUnit.MILLIONS);
// We can set a more specific value by which tick labels will display their values.
// This statement is equivalent to the one above.
axis.getDisplayUnit().setCustomUnit(1000000.0);
doc.save(getArtifactsDir() + "Charts.AxisDisplayUnit.docx");getTickLabelOffset/setTickLabelOffset | |
@Deprecated public int getTickLabelOffset() / public void setTickLabelOffset(int value) | |
The property represents a percentage of the default label offset.
Valid range is from 0 to 1000 percent inclusive. Default value is 100%.
The property has effect only for category axes. It is not supported by MS Office 2016 new charts.
getTickLabelPosition/setTickLabelPosition | |
@Deprecated public int getTickLabelPosition() / public void setTickLabelPosition(int value) | |
getTickLabels | |
public AxisTickLabels getTickLabels() | |
getTickLabelSpacing/setTickLabelSpacing | |
@Deprecated public int getTickLabelSpacing() / public void setTickLabelSpacing(int value) | |
The property has effect for text category and series axes. It is not supported by MS Office 2016 new charts. Valid range of a value is greater than or equal to 1.
Setting this property sets the false.
Example:
Shows how to manipulate the tick marks and displayed values of a chart axis.
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
Shape shape = builder.insertChart(ChartType.SCATTER, 450.0, 250.0);
Chart chart = shape.getChart();
Assert.assertEquals(1, chart.getSeries().getCount());
Assert.assertEquals("Y-Values", chart.getSeries().get(0).getName());
// Set the minor tick marks of the Y-axis to point away from the plot area,
// and the major tick marks to cross the axis.
ChartAxis axis = chart.getAxisY();
axis.setMajorTickMark(AxisTickMark.CROSS);
axis.setMinorTickMark(AxisTickMark.OUTSIDE);
// Set they Y-axis to show a major tick every 10 units, and a minor tick every 1 unit.
axis.setMajorUnit(10.0);
axis.setMinorUnit(1.0);
// Set the Y-axis bounds to -10 and 20.
// This Y-axis will now display 4 major tick marks and 27 minor tick marks.
axis.getScaling().setMinimum(new AxisBound(-10));
axis.getScaling().setMaximum(new AxisBound(20.0));
// For the X-axis, set the major tick marks at every 10 units,
// every minor tick mark at 2.5 units.
axis = chart.getAxisX();
axis.setMajorUnit(10.0);
axis.setMinorUnit(2.5);
// Configure both types of tick marks to appear inside the graph plot area.
axis.setMajorTickMark(AxisTickMark.INSIDE);
axis.setMinorTickMark(AxisTickMark.INSIDE);
// Set the X-axis bounds so that the X-axis spans 5 major tick marks and 12 minor tick marks.
axis.getScaling().setMinimum(new AxisBound(-10));
axis.getScaling().setMaximum(new AxisBound(30.0));
axis.getTickLabels().setAlignment(ParagraphAlignment.RIGHT);
Assert.assertEquals(1, axis.getTickLabels().getSpacing());
// Set the tick labels to display their value in millions.
axis.getDisplayUnit().setUnit(AxisBuiltInUnit.MILLIONS);
// We can set a more specific value by which tick labels will display their values.
// This statement is equivalent to the one above.
axis.getDisplayUnit().setCustomUnit(1000000.0);
doc.save(getArtifactsDir() + "Charts.AxisDisplayUnit.docx");getTickLabelSpacingIsAuto/setTickLabelSpacingIsAuto | |
@Deprecated public boolean getTickLabelSpacingIsAuto() / public void setTickLabelSpacingIsAuto(boolean value) | |
Default value is true.
The property has effect for text category and series axes. It is not supported by MS Office 2016 new charts.
getTickMarkSpacing/setTickMarkSpacing | |
public int getTickMarkSpacing() / public void setTickMarkSpacing(int value) | |
The property has effect for text category and series axes. It is not supported by MS Office 2016 new charts.
Valid range of a value is greater than or equal to 1.
Example:
Shows how to insert a chart and modify the appearance of its axes.
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
Shape shape = builder.insertChart(ChartType.COLUMN, 500.0, 300.0);
Chart chart = shape.getChart();
// Clear the chart's demo data series to start with a clean chart.
chart.getSeries().clear();
// Insert a chart series with categories for the X-axis and respective numeric values for the Y-axis.
chart.getSeries().add("Aspose Test Series",
new String[]{"Word", "PDF", "Excel", "GoogleDocs", "Note"},
new double[]{640.0, 320.0, 280.0, 120.0, 150.0});
// Chart axes have various options that can change their appearance,
// such as their direction, major/minor unit ticks, and tick marks.
ChartAxis xAxis = chart.getAxisX();
xAxis.setCategoryType(AxisCategoryType.CATEGORY);
xAxis.setCrosses(AxisCrosses.MINIMUM);
xAxis.setReverseOrder(false);
xAxis.setMajorTickMark(AxisTickMark.INSIDE);
xAxis.setMinorTickMark(AxisTickMark.CROSS);
xAxis.setMajorUnit(10.0d);
xAxis.setMinorUnit(15.0d);
xAxis.getTickLabels().setOffset(50);
xAxis.getTickLabels().setPosition(AxisTickLabelPosition.LOW);
xAxis.getTickLabels().isAutoSpacing(false);
xAxis.setTickMarkSpacing(1);
ChartAxis yAxis = chart.getAxisY();
yAxis.setCategoryType(AxisCategoryType.AUTOMATIC);
yAxis.setCrosses(AxisCrosses.MAXIMUM);
yAxis.setReverseOrder(true);
yAxis.setMajorTickMark(AxisTickMark.INSIDE);
yAxis.setMinorTickMark(AxisTickMark.CROSS);
yAxis.setMajorUnit(100.0d);
yAxis.setMinorUnit(20.0d);
yAxis.getTickLabels().setPosition(AxisTickLabelPosition.NEXT_TO_AXIS);
yAxis.getTickLabels().setAlignment(ParagraphAlignment.CENTER);
yAxis.getTickLabels().getFont().setColor(Color.RED);
yAxis.getTickLabels().setSpacing(1);
// Column charts do not have a Z-axis.
Assert.assertNull(chart.getAxisZ());
doc.save(getArtifactsDir() + "Charts.AxisProperties.docx");getTitle | |
public ChartAxisTitle getTitle() | |
getType | |
public int getType() | |
Example:
Shows how to create an appropriate type of chart series for a graph type.
public void chartSeriesCollection() throws Exception {
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
// There are several ways of populating a chart's series collection.
// Different series schemas are intended for different chart types.
// 1 - Column chart with columns grouped and banded along the X-axis by category:
Chart chart = appendChart(builder, ChartType.COLUMN, 500.0, 300.0);
String[] categories = {"Category 1", "Category 2", "Category 3"};
// Insert two series of decimal values containing a value for each respective category.
// This column chart will have three groups, each with two columns.
chart.getSeries().add("Series 1", categories, new double[]{76.6, 82.1, 91.6});
chart.getSeries().add("Series 2", categories, new double[]{64.2, 79.5, 94.0});
// Categories are distributed along the X-axis, and values are distributed along the Y-axis.
Assert.assertEquals(ChartAxisType.CATEGORY, chart.getAxisX().getType());
Assert.assertEquals(ChartAxisType.VALUE, chart.getAxisY().getType());
// 2 - Area chart with dates distributed along the X-axis:
chart = appendChart(builder, ChartType.AREA, 500.0, 300.0);
Date[] dates = {DocumentHelper.createDate(2014, 3, 31),
DocumentHelper.createDate(2017, 1, 23),
DocumentHelper.createDate(2017, 6, 18),
DocumentHelper.createDate(2019, 11, 22),
DocumentHelper.createDate(2020, 9, 7)
};
// Insert a series with a decimal value for each respective date.
// The dates will be distributed along a linear X-axis,
// and the values added to this series will create data points.
chart.getSeries().add("Series 1", dates, new double[]{15.8, 21.5, 22.9, 28.7, 33.1});
Assert.assertEquals(ChartAxisType.CATEGORY, chart.getAxisX().getType());
Assert.assertEquals(ChartAxisType.VALUE, chart.getAxisY().getType());
// 3 - 2D scatter plot:
chart = appendChart(builder, ChartType.SCATTER, 500.0, 300.0);
// Each series will need two decimal arrays of equal length.
// The first array contains X-values, and the second contains corresponding Y-values
// of data points on the chart's graph.
chart.getSeries().add("Series 1",
new double[]{3.1, 3.5, 6.3, 4.1, 2.2, 8.3, 1.2, 3.6},
new double[]{3.1, 6.3, 4.6, 0.9, 8.5, 4.2, 2.3, 9.9});
chart.getSeries().add("Series 2",
new double[]{2.6, 7.3, 4.5, 6.6, 2.1, 9.3, 0.7, 3.3},
new double[]{7.1, 6.6, 3.5, 7.8, 7.7, 9.5, 1.3, 4.6});
Assert.assertEquals(ChartAxisType.VALUE, chart.getAxisX().getType());
Assert.assertEquals(ChartAxisType.VALUE, chart.getAxisY().getType());
// 4 - Bubble chart:
chart = appendChart(builder, ChartType.BUBBLE, 500.0, 300.0);
// Each series will need three decimal arrays of equal length.
// The first array contains X-values, the second contains corresponding Y-values,
// and the third contains diameters for each of the graph's data points.
chart.getSeries().add("Series 1",
new double[]{1.1, 5.0, 9.8},
new double[]{1.2, 4.9, 9.9},
new double[]{2.0, 4.0, 8.0});
doc.save(getArtifactsDir() + "Charts.ChartSeriesCollection.docx");
}
/// <summary>
/// Insert a chart using a document builder of a specified ChartType, width and height, and remove its demo data.
/// </summary>
private static Chart appendChart(DocumentBuilder builder, /*ChartType*/int chartType, double width, double height) throws Exception {
Shape chartShape = builder.insertChart(chartType, width, height);
Chart chart = chartShape.getChart();
chart.getSeries().clear();
return chart;
}