Class XDDFChart
- java.lang.Object
-
- org.apache.poi.ooxml.POIXMLDocumentPart
-
- org.apache.poi.xddf.usermodel.chart.XDDFChart
-
- All Implemented Interfaces:
TextContainer
@Beta public abstract class XDDFChart extends POIXMLDocumentPart implements TextContainer
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.apache.poi.ooxml.POIXMLDocumentPart
POIXMLDocumentPart.RelationPart
-
-
Field Summary
Fields Modifier and Type Field Description protected java.util.List<XDDFChartAxis>axesprotected org.openxmlformats.schemas.drawingml.x2006.chart.CTChartchartChart element in the chart spaceprotected org.openxmlformats.schemas.drawingml.x2006.chart.CTChartSpacechartSpaceRoot element of the Chart part
-
Constructor Summary
Constructors Modifier Constructor Description protectedXDDFChart()Construct a chart.protectedXDDFChart(PackagePart part)Construct a DrawingML chart from a package part.
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected voidcommit()save chart xmlXDDFCategoryAxiscreateCategoryAxis(AxisPosition pos)XDDFChartDatacreateData(ChartTypes type, XDDFChartAxis category, XDDFValueAxis values)XDDFDateAxiscreateDateAxis(AxisPosition pos)PackageRelationshipcreateRelationshipInChart(POIXMLRelation chartRelation, POIXMLFactory chartFactory, int chartIndex)method to create relationship with embedded part for example writing xlsx file stream into output streamXDDFValueAxiscreateValueAxis(AxisPosition pos)voiddeleteLegend()voiddeleteShapeProperties()voiddisplayBlanksAs(DisplayBlanks as)protected voidfillSheet(XSSFSheet sheet, XDDFDataSource<?> categoryData, XDDFNumericalDataSource<?> valuesData)this method writes the data into sheet<R> java.util.Optional<R>findDefinedParagraphProperty(java.util.function.Function<org.openxmlformats.schemas.drawingml.x2006.main.CTTextParagraphProperties,java.lang.Boolean> isSet, java.util.function.Function<org.openxmlformats.schemas.drawingml.x2006.main.CTTextParagraphProperties,R> getter)<R> java.util.Optional<R>findDefinedRunProperty(java.util.function.Function<org.openxmlformats.schemas.drawingml.x2006.main.CTTextCharacterProperties,java.lang.Boolean> isSet, java.util.function.Function<org.openxmlformats.schemas.drawingml.x2006.main.CTTextCharacterProperties,R> getter)java.lang.StringformatRange(CellRangeAddress range)java.util.List<? extends XDDFChartAxis>getAxes()protected abstract POIXMLFactorygetChartFactory()protected intgetChartIndex()protected abstract POIXMLRelationgetChartRelation()java.util.List<XDDFChartData>getChartSeries()protected abstract POIXMLRelationgetChartWorkbookRelation()org.openxmlformats.schemas.drawingml.x2006.chart.CTChartgetCTChart()Return the underlying CTChart bean, within the Chart Spaceorg.openxmlformats.schemas.drawingml.x2006.chart.CTChartSpacegetCTChartSpace()Return the underlying CTChartSpace bean, the root element of the Chart part.protected org.openxmlformats.schemas.drawingml.x2006.chart.CTPlotAreagetCTPlotArea()Return the underlying CTPlotArea bean, within the ChartXDDFTextBodygetFormattedTitle()Get the chart title body if there is one, i.e.XDDFChartLegendgetOrAddLegend()XDDFManualLayoutgetOrAddManualLayout()XDDFShapePropertiesgetOrAddShapeProperties()XDDFTitlegetTitle()java.lang.BooleangetTitleOverlay()XSSFWorkbookgetWorkbook()voidimportContent(XDDFChart other)import content from other chart to created chartbooleanisPlotOnlyVisibleCells()voidplot(XDDFChartData data)voidsaveWorkbook(XSSFWorkbook workbook)this method write the XSSFWorkbook object data into embedded excel filevoidsetAutoTitleDeleted(boolean deleted)voidsetBackWall(int thickness)voidsetChartIndex(int chartIndex)set chart index which can be use for relation partvoidsetExternalId(java.lang.String id)set the relation id of embedded excel relation id into external data relation tagvoidsetFloor(int thickness)voidsetPlotOnlyVisibleCells(boolean only)CellReferencesetSheetTitle(java.lang.String title, int column)set sheet title in excel filevoidsetSideWall(int thickness)voidsetTitleOverlay(boolean overlay)voidsetTitleText(java.lang.String text)Sets the title text as a static string.voidsetValueRange(int axisIndex, java.lang.Double minimum, java.lang.Double maximum, java.lang.Double majorUnit, java.lang.Double minorUnit)Set value range (basic Axis Options)voidsetWorkbook(XSSFWorkbook workbook)while reading chart from template file then we need to parse and store embedded excel file in chart object show that we can modify value according to use-
Methods inherited from class org.apache.poi.ooxml.POIXMLDocumentPart
_invokeOnDocumentRead, addRelation, createRelationship, createRelationship, createRelationship, getNextPartNumber, getPackagePart, getParent, getRelationById, getRelationId, getRelationPartById, getRelationParts, getRelations, getTargetPart, isCommited, onDocumentCreate, onDocumentRead, onDocumentRemove, onSave, prepareForCommit, read, rebase, removeRelation, removeRelation, removeRelation, setCommited, toString
-
-
-
-
Field Detail
-
axes
protected java.util.List<XDDFChartAxis> axes
-
chartSpace
protected final org.openxmlformats.schemas.drawingml.x2006.chart.CTChartSpace chartSpace
Root element of the Chart part
-
chart
protected final org.openxmlformats.schemas.drawingml.x2006.chart.CTChart chart
Chart element in the chart space
-
-
Constructor Detail
-
XDDFChart
protected XDDFChart()
Construct a chart.
-
XDDFChart
protected XDDFChart(PackagePart part) throws java.io.IOException, org.apache.xmlbeans.XmlException
Construct a DrawingML chart from a package part.- Parameters:
part- the package part holding the chart data, the content type must beapplication/vnd.openxmlformats-officedocument.drawingml.chart+xml- Throws:
java.io.IOExceptionorg.apache.xmlbeans.XmlException- Since:
- POI 3.14-Beta1
-
-
Method Detail
-
getCTChartSpace
@Internal public org.openxmlformats.schemas.drawingml.x2006.chart.CTChartSpace getCTChartSpace()
Return the underlying CTChartSpace bean, the root element of the Chart part.- Returns:
- the underlying CTChartSpace bean
-
getCTChart
@Internal public org.openxmlformats.schemas.drawingml.x2006.chart.CTChart getCTChart()
Return the underlying CTChart bean, within the Chart Space- Returns:
- the underlying CTChart bean
-
getCTPlotArea
@Internal protected org.openxmlformats.schemas.drawingml.x2006.chart.CTPlotArea getCTPlotArea()
Return the underlying CTPlotArea bean, within the Chart- Returns:
- the underlying CTPlotArea bean
-
isPlotOnlyVisibleCells
public boolean isPlotOnlyVisibleCells()
- Returns:
- true if only visible cells will be present on the chart, false otherwise
-
setPlotOnlyVisibleCells
public void setPlotOnlyVisibleCells(boolean only)
- Parameters:
only- a flag specifying if only visible cells should be present on the chart
-
setFloor
public void setFloor(int thickness)
-
setBackWall
public void setBackWall(int thickness)
-
setSideWall
public void setSideWall(int thickness)
-
setAutoTitleDeleted
public void setAutoTitleDeleted(boolean deleted)
-
displayBlanksAs
public void displayBlanksAs(DisplayBlanks as)
- Since:
- 4.0.1
-
getTitleOverlay
public java.lang.Boolean getTitleOverlay()
- Since:
- 4.0.1
-
setTitleOverlay
public void setTitleOverlay(boolean overlay)
- Since:
- 4.0.1
-
setTitleText
public void setTitleText(java.lang.String text)
Sets the title text as a static string.- Parameters:
text- to use as new title- Since:
- 4.0.1
-
getTitle
public XDDFTitle getTitle()
- Since:
- 4.0.1
-
getFormattedTitle
@Beta public XDDFTextBody getFormattedTitle()
Get the chart title body if there is one, i.e. title is set and is not a formula.- Returns:
- text body or null, if title is a formula or no title is set.
-
findDefinedParagraphProperty
public <R> java.util.Optional<R> findDefinedParagraphProperty(java.util.function.Function<org.openxmlformats.schemas.drawingml.x2006.main.CTTextParagraphProperties,java.lang.Boolean> isSet, java.util.function.Function<org.openxmlformats.schemas.drawingml.x2006.main.CTTextParagraphProperties,R> getter)- Specified by:
findDefinedParagraphPropertyin interfaceTextContainer
-
findDefinedRunProperty
public <R> java.util.Optional<R> findDefinedRunProperty(java.util.function.Function<org.openxmlformats.schemas.drawingml.x2006.main.CTTextCharacterProperties,java.lang.Boolean> isSet, java.util.function.Function<org.openxmlformats.schemas.drawingml.x2006.main.CTTextCharacterProperties,R> getter)- Specified by:
findDefinedRunPropertyin interfaceTextContainer
-
getOrAddShapeProperties
public XDDFShapeProperties getOrAddShapeProperties()
-
deleteShapeProperties
public void deleteShapeProperties()
-
getOrAddLegend
public XDDFChartLegend getOrAddLegend()
-
deleteLegend
public void deleteLegend()
-
getOrAddManualLayout
public XDDFManualLayout getOrAddManualLayout()
-
plot
public void plot(XDDFChartData data)
-
getChartSeries
public java.util.List<XDDFChartData> getChartSeries()
-
createValueAxis
public XDDFValueAxis createValueAxis(AxisPosition pos)
-
createCategoryAxis
public XDDFCategoryAxis createCategoryAxis(AxisPosition pos)
-
createDateAxis
public XDDFDateAxis createDateAxis(AxisPosition pos)
-
createData
public XDDFChartData createData(ChartTypes type, XDDFChartAxis category, XDDFValueAxis values)
-
getAxes
public java.util.List<? extends XDDFChartAxis> getAxes()
-
setValueRange
public void setValueRange(int axisIndex, java.lang.Double minimum, java.lang.Double maximum, java.lang.Double majorUnit, java.lang.Double minorUnit)Set value range (basic Axis Options)- Parameters:
axisIndex- 0 - primary axis, 1 - secondary axisminimum- minimum value; Double.NaN - automatic; null - no changemaximum- maximum value; Double.NaN - automatic; null - no changemajorUnit- major unit value; Double.NaN - automatic; null - no changeminorUnit- minor unit value; Double.NaN - automatic; null - no change
-
createRelationshipInChart
public PackageRelationship createRelationshipInChart(POIXMLRelation chartRelation, POIXMLFactory chartFactory, int chartIndex)
method to create relationship with embedded part for example writing xlsx file stream into output stream- Parameters:
chartRelation- relationship objectchartFactory- ChartFactory objectchartIndex- index used to suffix on file- Returns:
- return relation part which used to write relation in .rels file and get relation id
- Since:
- POI 4.0.0
-
saveWorkbook
public void saveWorkbook(XSSFWorkbook workbook) throws java.io.IOException, InvalidFormatException
this method write the XSSFWorkbook object data into embedded excel file- Parameters:
workbook- XSSFworkbook object- Throws:
java.io.IOExceptionInvalidFormatException- Since:
- POI 4.0.0
-
getChartRelation
protected abstract POIXMLRelation getChartRelation()
- Returns:
- the chart relation in the implementing subclass.
- Since:
- POI 4.0.0
-
getChartWorkbookRelation
protected abstract POIXMLRelation getChartWorkbookRelation()
- Returns:
- the chart workbook relation in the implementing subclass.
- Since:
- POI 4.0.0
-
getChartFactory
protected abstract POIXMLFactory getChartFactory()
- Returns:
- the chart factory in the implementing subclass.
- Since:
- POI 4.0.0
-
fillSheet
protected void fillSheet(XSSFSheet sheet, XDDFDataSource<?> categoryData, XDDFNumericalDataSource<?> valuesData)
this method writes the data into sheet- Parameters:
sheet- sheet of embedded excelcategoryData- category valuesvaluesData- data values- Since:
- POI 4.0.0
-
importContent
public void importContent(XDDFChart other)
import content from other chart to created chart- Parameters:
other- chart object- Since:
- POI 4.0.0
-
commit
protected void commit() throws java.io.IOExceptionsave chart xml- Overrides:
commitin classPOIXMLDocumentPart- Throws:
java.io.IOException- a subclass may throw an IOException if the changes can't be committed
-
setSheetTitle
public CellReference setSheetTitle(java.lang.String title, int column)
set sheet title in excel file- Parameters:
title- title of sheetcolumn- column index- Returns:
- return cell reference
- Since:
- POI 4.0.0
-
formatRange
public java.lang.String formatRange(CellRangeAddress range)
- Parameters:
range-- Returns:
- Since:
- POI 4.0.0
-
getWorkbook
public XSSFWorkbook getWorkbook() throws java.io.IOException, InvalidFormatException
- Returns:
- returns the workbook object of embedded excel file
- Throws:
java.io.IOExceptionInvalidFormatException- Since:
- POI 4.0.0
-
setWorkbook
public void setWorkbook(XSSFWorkbook workbook)
while reading chart from template file then we need to parse and store embedded excel file in chart object show that we can modify value according to use- Parameters:
workbook- workbook object which we read from chart embedded part- Since:
- POI 4.0.0
-
setExternalId
public void setExternalId(java.lang.String id)
set the relation id of embedded excel relation id into external data relation tag- Parameters:
id- relation id of embedded excel relation id into external data relation tag- Since:
- POI 4.0.0
-
getChartIndex
protected int getChartIndex()
- Returns:
- method return chart index
- Since:
- POI 4.0.0
-
setChartIndex
public void setChartIndex(int chartIndex)
set chart index which can be use for relation part- Parameters:
chartIndex- chart index which can be use for relation part
-
-