Настройка таблиц данных диаграмм в презентациях на .NET
Обзор
Aspose.Slides for .NET позволяет отображать таблицу данных диаграммы и настраивать её форматирование текста, границы и ключи легенды. В этой статье объясняется, как включить таблицу, отформатировать её текст, управлять каждым типом границы и показывать или скрывать ключи легенды. Примеры сохраняют сконфигурированные диаграммы в файлы PPTX.
Установить свойства шрифта
Чтобы отобразить таблицу данных диаграммы, установите HasDataTable в true. Используйте ChartDataTable для доступа к таблице и настройки её форматирования текста.
- Загрузите презентацию, используя класс Presentation.
- Добавьте сгруппированную столбцовую диаграмму на первый слайд.
- Включите таблицу данных диаграммы.
- Включите полужирный текст с помощью FontBold и установите FontHeight в
20для 20‑пунктового текста. - Сохраните изменённую презентацию.
Следующий пример требует наличия test.pptx в рабочем каталоге как минимум с одним слайдом. Он добавляет диаграмму с данными по умолчанию в позицию (50, 50) с шириной 600 пунктов и высотой 400 пунктов. Сохранённый output.pptx содержит диаграмму с включённой таблицей данных и применёнными указанными параметрами шрифта.
using Aspose.Slides;
using Aspose.Slides.Charts;
using Aspose.Slides.Export;
using var presentation = new Presentation("test.pptx");
var slide = presentation.Slides[0];
var chart = slide.Shapes.AddChart(ChartType.ClusteredColumn, 50, 50, 600, 400);
chart.HasDataTable = true;
var portionFormat = chart.ChartDataTable.TextFormat.PortionFormat;
portionFormat.FontBold = NullableBool.True;
portionFormat.FontHeight = 20;
presentation.Save("output.pptx", SaveFormat.Pptx);
Настроить границы таблицы данных
Включите таблицу с помощью IChart.HasDataTable и получите к ней доступ через IChart.ChartDataTable. Вы можете независимо управлять тремя типами границ:
- HasBorderHorizontal управляет горизонтальными границами ячеек.
- HasBorderVertical управляет вертикальными границами ячеек.
- HasBorderOutline управляет внешней границей таблицы.
Установите каждое свойство в true, чтобы отображать его границы, или в false, чтобы скрыть их. Следующий пример создаёт сгруппированную столбцовую диаграмму с данными по умолчанию, отображает горизонтальные границы и внешнюю границу, а вертикальные границы скрывает. Для него не требуется входной файл. Позиция и размер диаграммы указываются в пунктах.
using Aspose.Slides;
using Aspose.Slides.Charts;
using Aspose.Slides.Export;
using var presentation = new Presentation();
var slide = presentation.Slides[0];
var chart = slide.Shapes.AddChart(ChartType.ClusteredColumn, 50, 50, 600, 400);
chart.HasDataTable = true;
var dataTable = chart.ChartDataTable;
dataTable.HasBorderHorizontal = true;
dataTable.HasBorderVertical = false;
dataTable.HasBorderOutline = true;
presentation.Save("data-table-borders.pptx", SaveFormat.Pptx);
Сравнение ниже использует одинаковые данные диаграммы и настройки ключей легенды во всех четырёх случаях. Начиная с включённых всех границ, каждый последующий вариант отключает только одно свойство границы. Вариант в левом нижнем углу соответствует настройкам границ из примера.

Показать или скрыть ключи легенды
Ключи легенды — это небольшие цветные маркеры рядом с названиями серий в таблице данных. Они помогают читателям сопоставлять каждую строку таблицы с соответствующей серией диаграммы. Установите ShowLegendKey в true, чтобы показывать эти маркеры, или в false, чтобы скрыть их.
Отдельная легенда диаграммы управляется IChart.HasLegend. Эти настройки независимы: скрытие отдельной легенды не скрывает ключи внутри таблицы данных, а скрытие ключей таблицы не скрывает отдельную легенду.
Следующий пример создаёт диаграмму с данными по умолчанию, включает её таблицу данных и отображает ключи легенды внутри неё, одновременно скрывая отдельную легенду. Все границы таблицы явно включены. Входная презентация не требуется. Чтобы скрыть только ключи таблицы, измените dataTable.ShowLegendKey на false.
using Aspose.Slides;
using Aspose.Slides.Charts;
using Aspose.Slides.Export;
using var presentation = new Presentation();
var slide = presentation.Slides[0];
var chart = slide.Shapes.AddChart(ChartType.ClusteredColumn, 50, 50, 600, 400);
chart.HasDataTable = true;
chart.HasLegend = false;
var dataTable = chart.ChartDataTable;
dataTable.HasBorderHorizontal = true;
dataTable.HasBorderVertical = true;
dataTable.HasBorderOutline = true;
dataTable.ShowLegendKey = true;
presentation.Save("data-table-legend-keys.pptx", SaveFormat.Pptx);
Сравнение ниже показывает одну и ту же таблицу с включёнными и отключёнными ключами легенды. Все границы остаются включёнными, а отдельная легенда диаграммы скрыта в обоих случаях.

Часто задаваемые вопросы
Можно ли отображать ключи легенды в таблице данных диаграммы?
Да. Установите ShowLegendKey в true, чтобы отобразить ключи легенды, или в false, чтобы скрыть их.
Сохранится ли таблица данных при экспорте презентации в PDF, HTML или изображения?
Да. Aspose.Slides рендерит диаграмму и её отображаемую таблицу данных как часть слайда при экспорте в PDF, HTML, или изображения.
Можно ли работать с таблицами данных в диаграммах, загруженных из шаблона?
Да. Для диаграммы, загруженной из существующей презентации или шаблона, используйте [HasDataTable] чтобы проверить или изменить, отображается ли её таблица данных.
Как найти диаграммы, у которых включена таблица данных?
Пройдитесь по объектам shape на каждом слайде, определите диаграммы и проверьте их свойство [HasDataTable]. Значение true указывает, что таблица данных включена.