public class AxisBound
Bound can be specified as a numeric, datetime or a special "auto" value. The instances of this class are immutable. Example:
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
// Add a line chart, and clear its demo data series to start with a clean chart.
Shape shape = builder.insertChart(ChartType.LINE, 500.0, 300.0);
Chart chart = shape.getChart();
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();
xAxis.getScaling().setMinimum(new AxisBound(DocumentHelper.createDate(2017, 11, 5)));
xAxis.getScaling().setMaximum(new AxisBound(DocumentHelper.createDate(2017, 12, 3)));
// 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);
// Define Y-axis properties for decimal values.
ChartAxis yAxis = chart.getAxisY();
yAxis.setTickLabelPosition(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));
doc.save(getArtifactsDir() + "Charts.DateTimeValues.docx");
Constructor Summary |
---|
AxisBound()
Creates a new instance indicating that axis bound should be determined automatically by a word-processing application. |
AxisBound(doublevalue)
Creates an axis bound represented as a number. |
AxisBound(java.util.Datedatetime)
Creates an axis bound represented as datetime value. |
Property Getters/Setters Summary | ||
---|---|---|
boolean | isAuto() | |
Returns a flag indicating that axis bound should be determined automatically.
|
||
double | getValue() | |
Returns numeric value of axis bound.
|
||
java.util.Date | getValueAsDate() | |
Returns value of axis bound represented as datetime.
|
Method Summary | ||
---|---|---|
boolean | equals(java.lang.Object obj) | |
Determines whether the specified object is equal in value to the current object.
|
||
int | hashCode() | |
Serves as a hash function for this type.
|
||
java.lang.String | toString() | |
Returns a user-friendly string that displays the value of this object.
|
public AxisBound()
Example:
Shows how to set custom axis bounds.Document doc = new Document(); DocumentBuilder builder = new DocumentBuilder(doc); // Add a scatter chart, and then clear its demo data series to start with a clean chart. Shape chartShape = builder.insertChart(ChartType.SCATTER, 450.0, 300.0); Chart chart = chartShape.getChart(); chart.getSeries().clear(); // Add a series with two decimal arrays. The first array contains the X-values, // and the second contains corresponding Y-values for points in the scatter chart. chart.getSeries().add("Series 1", new double[] { 1.1, 5.4, 7.9, 3.5, 2.1, 9.7 }, new double[] { 2.1, 0.3, 0.6, 3.3, 1.4, 1.9 }); // By default, default scaling is applied to the graph's X and Y-axes, // so that both their ranges are big enough to encompass every X and Y-value of every series. Assert.assertTrue(chart.getAxisX().getScaling().getMinimum().isAuto()); // We can define our own axis bounds. // In this case, we will make both the X and Y-axis rulers show a range of 0 to 10. chart.getAxisX().getScaling().setMinimum(new AxisBound(0.0)); chart.getAxisX().getScaling().setMaximum(new AxisBound(10.0)); chart.getAxisY().getScaling().setMinimum(new AxisBound(0.0)); chart.getAxisY().getScaling().setMaximum(new AxisBound(10.0)); Assert.assertFalse(chart.getAxisX().getScaling().getMinimum().isAuto()); Assert.assertFalse(chart.getAxisY().getScaling().getMinimum().isAuto()); // Create a line chart with a series requiring a range of dates on the X-axis, and decimal values for the Y-axis. chartShape = builder.insertChart(ChartType.LINE, 450.0, 300.0); chart = chartShape.getChart(); chart.getSeries().clear(); Date[] dates = {DocumentHelper.createDate(1973, 5, 11), DocumentHelper.createDate(1981, 2, 4), DocumentHelper.createDate(1985, 9, 23), DocumentHelper.createDate(1989, 6, 28), DocumentHelper.createDate(1994, 12, 15) }; chart.getSeries().add("Series 1", dates, new double[]{3.0, 4.7, 5.9, 7.1, 8.9}); // We can set axis bounds in the form of dates as well, limiting the chart to a period. // Setting the range to 1980-1990 will omit the two of the series values // that are outside of the range from the graph. chart.getAxisX().getScaling().setMinimum(new AxisBound(DocumentHelper.createDate(1980, 1, 1))); chart.getAxisX().getScaling().setMaximum(new AxisBound(DocumentHelper.createDate(1990, 1, 1))); doc.save(getArtifactsDir() + "Charts.AxisBound.docx");
public AxisBound(double value)
Example:
Shows how to insert chart with date/time values.Document doc = new Document(); DocumentBuilder builder = new DocumentBuilder(doc); // Add a line chart, and clear its demo data series to start with a clean chart. Shape shape = builder.insertChart(ChartType.LINE, 500.0, 300.0); Chart chart = shape.getChart(); 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(); xAxis.getScaling().setMinimum(new AxisBound(DocumentHelper.createDate(2017, 11, 5))); xAxis.getScaling().setMaximum(new AxisBound(DocumentHelper.createDate(2017, 12, 3))); // 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); // Define Y-axis properties for decimal values. ChartAxis yAxis = chart.getAxisY(); yAxis.setTickLabelPosition(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)); doc.save(getArtifactsDir() + "Charts.DateTimeValues.docx");
public AxisBound(java.util.Date datetime)
Example:
Shows how to insert chart with date/time values.Document doc = new Document(); DocumentBuilder builder = new DocumentBuilder(doc); // Add a line chart, and clear its demo data series to start with a clean chart. Shape shape = builder.insertChart(ChartType.LINE, 500.0, 300.0); Chart chart = shape.getChart(); 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(); xAxis.getScaling().setMinimum(new AxisBound(DocumentHelper.createDate(2017, 11, 5))); xAxis.getScaling().setMaximum(new AxisBound(DocumentHelper.createDate(2017, 12, 3))); // 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); // Define Y-axis properties for decimal values. ChartAxis yAxis = chart.getAxisY(); yAxis.setTickLabelPosition(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)); doc.save(getArtifactsDir() + "Charts.DateTimeValues.docx");
public boolean isAuto()
Example:
Shows how to set custom axis bounds.Document doc = new Document(); DocumentBuilder builder = new DocumentBuilder(doc); // Add a scatter chart, and then clear its demo data series to start with a clean chart. Shape chartShape = builder.insertChart(ChartType.SCATTER, 450.0, 300.0); Chart chart = chartShape.getChart(); chart.getSeries().clear(); // Add a series with two decimal arrays. The first array contains the X-values, // and the second contains corresponding Y-values for points in the scatter chart. chart.getSeries().add("Series 1", new double[] { 1.1, 5.4, 7.9, 3.5, 2.1, 9.7 }, new double[] { 2.1, 0.3, 0.6, 3.3, 1.4, 1.9 }); // By default, default scaling is applied to the graph's X and Y-axes, // so that both their ranges are big enough to encompass every X and Y-value of every series. Assert.assertTrue(chart.getAxisX().getScaling().getMinimum().isAuto()); // We can define our own axis bounds. // In this case, we will make both the X and Y-axis rulers show a range of 0 to 10. chart.getAxisX().getScaling().setMinimum(new AxisBound(0.0)); chart.getAxisX().getScaling().setMaximum(new AxisBound(10.0)); chart.getAxisY().getScaling().setMinimum(new AxisBound(0.0)); chart.getAxisY().getScaling().setMaximum(new AxisBound(10.0)); Assert.assertFalse(chart.getAxisX().getScaling().getMinimum().isAuto()); Assert.assertFalse(chart.getAxisY().getScaling().getMinimum().isAuto()); // Create a line chart with a series requiring a range of dates on the X-axis, and decimal values for the Y-axis. chartShape = builder.insertChart(ChartType.LINE, 450.0, 300.0); chart = chartShape.getChart(); chart.getSeries().clear(); Date[] dates = {DocumentHelper.createDate(1973, 5, 11), DocumentHelper.createDate(1981, 2, 4), DocumentHelper.createDate(1985, 9, 23), DocumentHelper.createDate(1989, 6, 28), DocumentHelper.createDate(1994, 12, 15) }; chart.getSeries().add("Series 1", dates, new double[]{3.0, 4.7, 5.9, 7.1, 8.9}); // We can set axis bounds in the form of dates as well, limiting the chart to a period. // Setting the range to 1980-1990 will omit the two of the series values // that are outside of the range from the graph. chart.getAxisX().getScaling().setMinimum(new AxisBound(DocumentHelper.createDate(1980, 1, 1))); chart.getAxisX().getScaling().setMaximum(new AxisBound(DocumentHelper.createDate(1990, 1, 1))); doc.save(getArtifactsDir() + "Charts.AxisBound.docx");
public double getValue()
Example:
Shows how to set custom axis bounds.Document doc = new Document(); DocumentBuilder builder = new DocumentBuilder(doc); // Add a scatter chart, and then clear its demo data series to start with a clean chart. Shape chartShape = builder.insertChart(ChartType.SCATTER, 450.0, 300.0); Chart chart = chartShape.getChart(); chart.getSeries().clear(); // Add a series with two decimal arrays. The first array contains the X-values, // and the second contains corresponding Y-values for points in the scatter chart. chart.getSeries().add("Series 1", new double[] { 1.1, 5.4, 7.9, 3.5, 2.1, 9.7 }, new double[] { 2.1, 0.3, 0.6, 3.3, 1.4, 1.9 }); // By default, default scaling is applied to the graph's X and Y-axes, // so that both their ranges are big enough to encompass every X and Y-value of every series. Assert.assertTrue(chart.getAxisX().getScaling().getMinimum().isAuto()); // We can define our own axis bounds. // In this case, we will make both the X and Y-axis rulers show a range of 0 to 10. chart.getAxisX().getScaling().setMinimum(new AxisBound(0.0)); chart.getAxisX().getScaling().setMaximum(new AxisBound(10.0)); chart.getAxisY().getScaling().setMinimum(new AxisBound(0.0)); chart.getAxisY().getScaling().setMaximum(new AxisBound(10.0)); Assert.assertFalse(chart.getAxisX().getScaling().getMinimum().isAuto()); Assert.assertFalse(chart.getAxisY().getScaling().getMinimum().isAuto()); // Create a line chart with a series requiring a range of dates on the X-axis, and decimal values for the Y-axis. chartShape = builder.insertChart(ChartType.LINE, 450.0, 300.0); chart = chartShape.getChart(); chart.getSeries().clear(); Date[] dates = {DocumentHelper.createDate(1973, 5, 11), DocumentHelper.createDate(1981, 2, 4), DocumentHelper.createDate(1985, 9, 23), DocumentHelper.createDate(1989, 6, 28), DocumentHelper.createDate(1994, 12, 15) }; chart.getSeries().add("Series 1", dates, new double[]{3.0, 4.7, 5.9, 7.1, 8.9}); // We can set axis bounds in the form of dates as well, limiting the chart to a period. // Setting the range to 1980-1990 will omit the two of the series values // that are outside of the range from the graph. chart.getAxisX().getScaling().setMinimum(new AxisBound(DocumentHelper.createDate(1980, 1, 1))); chart.getAxisX().getScaling().setMaximum(new AxisBound(DocumentHelper.createDate(1990, 1, 1))); doc.save(getArtifactsDir() + "Charts.AxisBound.docx");
public java.util.Date getValueAsDate()
Example:
Shows how to set custom axis bounds.Document doc = new Document(); DocumentBuilder builder = new DocumentBuilder(doc); // Add a scatter chart, and then clear its demo data series to start with a clean chart. Shape chartShape = builder.insertChart(ChartType.SCATTER, 450.0, 300.0); Chart chart = chartShape.getChart(); chart.getSeries().clear(); // Add a series with two decimal arrays. The first array contains the X-values, // and the second contains corresponding Y-values for points in the scatter chart. chart.getSeries().add("Series 1", new double[] { 1.1, 5.4, 7.9, 3.5, 2.1, 9.7 }, new double[] { 2.1, 0.3, 0.6, 3.3, 1.4, 1.9 }); // By default, default scaling is applied to the graph's X and Y-axes, // so that both their ranges are big enough to encompass every X and Y-value of every series. Assert.assertTrue(chart.getAxisX().getScaling().getMinimum().isAuto()); // We can define our own axis bounds. // In this case, we will make both the X and Y-axis rulers show a range of 0 to 10. chart.getAxisX().getScaling().setMinimum(new AxisBound(0.0)); chart.getAxisX().getScaling().setMaximum(new AxisBound(10.0)); chart.getAxisY().getScaling().setMinimum(new AxisBound(0.0)); chart.getAxisY().getScaling().setMaximum(new AxisBound(10.0)); Assert.assertFalse(chart.getAxisX().getScaling().getMinimum().isAuto()); Assert.assertFalse(chart.getAxisY().getScaling().getMinimum().isAuto()); // Create a line chart with a series requiring a range of dates on the X-axis, and decimal values for the Y-axis. chartShape = builder.insertChart(ChartType.LINE, 450.0, 300.0); chart = chartShape.getChart(); chart.getSeries().clear(); Date[] dates = {DocumentHelper.createDate(1973, 5, 11), DocumentHelper.createDate(1981, 2, 4), DocumentHelper.createDate(1985, 9, 23), DocumentHelper.createDate(1989, 6, 28), DocumentHelper.createDate(1994, 12, 15) }; chart.getSeries().add("Series 1", dates, new double[]{3.0, 4.7, 5.9, 7.1, 8.9}); // We can set axis bounds in the form of dates as well, limiting the chart to a period. // Setting the range to 1980-1990 will omit the two of the series values // that are outside of the range from the graph. chart.getAxisX().getScaling().setMinimum(new AxisBound(DocumentHelper.createDate(1980, 1, 1))); chart.getAxisX().getScaling().setMaximum(new AxisBound(DocumentHelper.createDate(1990, 1, 1))); doc.save(getArtifactsDir() + "Charts.AxisBound.docx");
public boolean equals(java.lang.Object obj)
public int hashCode()
public java.lang.String toString()