Сгенерируйте диаграмму, обработав интеллектуальные маркеры

Создание электронной таблицы конструктора

Электронная таблица дизайнера — это простой файл Excel, созданный с помощью приложения Excel Microsoft или API-интерфейсов Aspose.Cells, содержащий визуальное форматирование, формулы и интеллектуальные маркеры, содержимое которых должно быть заполнено во время выполнения.

Для простоты мы создадим электронную таблицу дизайнера, используя Aspose.Cells for Java API, а затем обработаем ее с помощью динамически созданного источника данных в демонстрационных целях.

Java

 //Create an instance of Workbook

Workbook book = new Workbook();

//Access the first (default) Worksheet from the collection

Worksheet dataSheet = book.getWorksheets().get(0);

//Name the first Worksheet for referencing

dataSheet.setName("ChartData");

//Access the CellsCollection of ChartData Worksheet

Cells cells = dataSheet.getCells();

//Place the markers in the Worksheet according to desired layout

cells.get("A1").putValue("&=$Headers(horizontal)");

cells.get("A2").putValue("&=$Year2000(horizontal)");

cells.get("A3").putValue("&=$Year2005(horizontal)");

cells.get("A4").putValue("&=$Year2010(horizontal)");

cells.get("A5").putValue("&=$Year2015(horizontal)");

Если вы сохраните полученную электронную таблицу на этом этапе, данные в рабочей таблице будут выглядеть следующим образом.

дело:изображение_альтернативный_текст

Электронная таблица дизайнера обработки

Чтобы обработать электронную таблицу дизайнера, у нас должен быть источник данных, соответствующий смарт-маркерам, используемым в электронной таблице дизайнера. Например, мы создали запись Smart Marker как**&=$Заголовки (горизонтальные)** который представляет переменную по имени Headers, тогда как ключ**(горизонтальный)** предполагает, что данные должны быть заполнены горизонтально.

Чтобы продемонстрировать этот вариант использования, мы создадим источник данных с нуля и обработаем его с помощью электронной таблицы конструктора, созданной на предыдущем шаге. Однако в сценарии реального времени данные могут уже быть доступны для дальнейшей обработки, поэтому вы можете пропустить создание источника данных, если данные уже доступны.

Java

 //Create string arrays which will serve as data sources to the smart markers

String[]headers = new String[]{"", "Item 1", "Item 2", "Item 3", "Item 4", "Item 5", "Item 6", "Item 7", "Item 8", "Item 9", "Item 10", "Item 11", "Item 12"};

String[]year2000 = new String[]{"2000", "310", "0", "110", "15", "20", "25", "30", "1222", "200", "421", "210", "133"};

String[]year2005 = new String[]{"2005", "508", "0", "170", "280", "190", "400", "105", "132", "303", "199", "120", "100"};

String[]year2010 = new String[]{"2010", "0", "210", "230", "1420", "1530", "160", "170", "110", "199", "129", "120", "230"};

String[]year2015 = new String[]{"2015", "2818", "320", "340", "260", "210", "310", "220", "0", "0", "0", "0", "122"};

Обработка Smart Markers довольно проста, как показано ниже.

Java

 //Create an instance of WorkbookDesigner

WorkbookDesigner designer = new WorkbookDesigner();

//Set the Workbook property for the instance of WorkbookDesigner

designer.setWorkbook(book);

//Set data sources for smart markers

designer.setDataSource("Headers", headers);

designer.setDataSource("Year2000", year2000);

designer.setDataSource("Year2005", year2005);

designer.setDataSource("Year2010", year2010);

designer.setDataSource("Year2015", year2015);

//Process the designer spreadsheet against the provided data sources

designer.process();

Если вы сохраните электронную таблицу на этом этапе, данные будут выглядеть следующим образом.

дело:изображение_альтернативный_текст

Создание диаграммы

Как только данные будут на месте, все, что нам нужно сделать, это создать диаграмму на основе источника данных. Чтобы сделать пример простым, мы будем использовать метод Chart.setChartDataRange, чтобы нам не нужно было дополнительно настраивать диаграмму.

Окончательная диаграмма выглядит следующим образом.

дело:изображение_альтернативный_текст