Работа с диаграммами

Работа с диаграммами

Aspose.Cells FOSS for Java сохраняет встроенные диаграммы при загрузке и сохранении XLSX-рабочих книг. Вы можете просматривать существующие диаграммы, запрашивать их тип и позицию, а также программно добавлять новые диаграммы стандартных типов. ChartEx типы, такие как Waterfall, Treemap, Sunburst, Histogram, Box and Whisker, Funnel и Map, сохраняются при круговом проходе, но не могут быть созданы через API.


Обзор

Диаграммы в листе управляются через ChartCollection, доступный через Worksheet.getCharts(). Каждый экземпляр Chart раскрывает своё имя, тип диаграммы и позицию привязки в две ячейки. Новая диаграмма вставляется с помощью ChartCollection.add(type, dataRange, upperLeftRow, upperLeftColumn, lowerRightRow, lowerRightColumn), который возвращает индекс вновь созданной диаграммы.

Перечисление ChartType определяет вариант диаграммы (столбчатая, линейная, круговая и т.д.). Вспомогательные методы ChartCollection.parseChartType(string) и ChartCollection.chartTypeToString(ChartType) преобразуют между перечислением и его строковым представлением для случаев сериализации.


Ключевые классы

КлассОписание:
ChartПредставляет встроенную диаграмму в листе. Предоставляет доступ только для чтения к имени, типу и позиции привязки к ячейке.
ChartCollectionКоллекция всех диаграмм на листе. Поддерживает подсчёт, доступ по индексу, добавление и вспомогательные функции преобразования типов диаграмм.
ChartTypeПеречисление, идентифицирующее вариант диаграммы (bar, column, line, pie, scatter и т.д.).
ChartModelВнутренняя модель сериализации для диаграммы. Предоставляет необработанные поля XML, используемые при загрузке/сохранении.

Доступ к диаграммам на листе

Получите ChartCollection из любого объекта Worksheet через Worksheet.getCharts(). Используйте ChartCollection.getCount(), чтобы определить количество присутствующих диаграмм. Отдельные диаграммы доступны по нулевому индексу через ChartCollection.get(index).

Как только у вас есть ссылка Chart, вы можете прочитать:

  • Chart.getName() — строка внутреннего имени диаграммы.
  • Chart.getChartType() — значение перечисления ChartType.
  • Chart.getUpperLeftRow() / Chart.getUpperLeftColumn() — ячейка привязки в левом верхнем углу.
  • Chart.getLowerRightRow() / Chart.getLowerRightColumn() — ячейка привязки в правом нижнем углу.
  • Chart.getExtentCx() / Chart.getExtentCy() — размеры диаграммы в EMU.

Добавление новой диаграммы

Используйте ChartCollection.add(type, dataRange, upperLeftRow, upperLeftColumn, lowerRightRow, lowerRightColumn) для вставки новой диаграммы. Метод возвращает целочисленный индекс диаграммы в коллекции. Укажите значение ChartType для аргумента type и строку диапазона ячеек (например A1:B5) для dataRange.

Примечание: типы семейства ChartEx (Waterfall, Treemap, Sunburst, Histogram, Box and Whisker, Funnel, Map) сохраняются при загрузке файлов XLSX, но не могут быть созданы программно через этот API.


API Reference Сводка

Chart

МетодТип возвратаОписание:
getName()StringВнутреннее имя диаграммы.
getChartType()ChartTypeЗначение перечисления варианта диаграммы.
getUpperLeftRow()intИндекс строки верхнего левого якоря.
getUpperLeftColumn()intИндекс столбца верхнего левого якоря.
getLowerRightRow()intИндекс строки нижнего правого якоря.
getLowerRightColumn()intИндекс столбца правого нижнего якоря.
getExtentCx()longШирина диаграммы в EMUs.
getExtentCy()longВысота диаграммы в EMUs.

ChartCollection

МетодТип возвратаОписание:
getCount()intКоличество диаграмм на листе.
get(index)ChartВозвращает диаграмму по заданному индексу, начиная с нуля.
add(type, dataRange, ...)intДобавляет новую диаграмму; возвращает её индекс.
parseChartType(string)ChartTypeПреобразует строковое имя в значение перечисления ChartType.
chartTypeToString(type)StringПреобразует значение перечисления ChartType в его строковое имя.

Ограничения

  • Типы ChartEx (Waterfall, Treemap, Sunburst, Histogram, Box and Whisker, Funnel, Map) передаются без изменений, но не могут быть созданы через API.
  • Привязки данных серии диаграммы не могут быть изменены в этой версии; диаграмма отображается на основе исходного диапазона данных, предоставленного при создании.

См. также:

 Русский