Как создать диаграмму stackedBar с использованием apache poi 4.0 XDDFChartData, XDDFBarChartData; в листе excel с использованием java я не хочу использовать jfree

Мне нужен пример кода на Java, в настоящее время я могу рисовать линейные и круговые диаграммы после чтения значений с листа, и я также хочу создать диаграмму StackedBar.

Я добавил фрагмент кода для круговой диаграммы, который я пытался использовать для формата .ppt. Я хочу то же самое в excel для диаграммы stackedBar в java.


String[] categories = listCategories.toArray(new String[listCategories.size()]);
            Double[] values = listValues.toArray(new Double[listValues.size()]);

            final int numOfPoints = categories.length;
            final String categoryDataRange = chart.formatRange(new CellRangeAddress(1, numOfPoints, 0, 0));
            final String valuesDataRange = chart.formatRange(new CellRangeAddress(1, numOfPoints, 1, 1));
            final XDDFDataSource<?> categoriesData = XDDFDataSourcesFactory.fromArray(categories, categoryDataRange);
            final XDDFNumericalDataSource<? extends Number> valuesData = XDDFDataSourcesFactory.fromArray(values, valuesDataRange);

            XDDFPieChartData.Series firstSeries = (XDDFPieChartData.Series) pie.getSeries().get(0);
            firstSeries.replaceData(categoriesData, valuesData);
            firstSeries.setTitle(chartTitle, chart.setSheetTitle(chartTitle, 0));
            firstSeries.setExplosion(25);
            chart.plot(pie);

Что вы пробовали? Есть пример Барчат. И есть XDDFBarChartData.setBarGrouping и BarGrouping.STACKED

Axel Richter 27.02.2019 13:58

Привет, спасибо за ваше возвращение, не могли бы вы поделиться примером фрагмента для гистограммы с накоплением, а также, пожалуйста, дайте мне знать, как я могу добавить метки данных, используя код в Java для тех же графиков.

Rajesh Bhardwaj 27.02.2019 16:52

Щелкните ссылку гистограмма. Посмотрите на код. Вы найдете // looking for "Stacked Bar Chart"? uncomment the following line - // bar.setBarGrouping(BarGrouping.STACKED);.

Axel Richter 27.02.2019 17:31

возможно ли использовать гистограмму с накоплением и линейную диаграмму на одном графике???

Rajesh Bhardwaj 27.02.2019 17:45

Да, это возможно, но не только с помощью XDDFвещей. Необходимы некоторые исправления с использованием bean-компонентов низкого уровня. Но здесь вопрос был не в этом. SO работает как: один конкретный вопрос -> несколько возможных ответов на этот вопрос. Это не работает как: Один неопределенный вопрос плюс дополнительные вопросы в комментариях -> несколько ответов.

Axel Richter 28.02.2019 07:25
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
В компьютерном программировании биты играют важнейшую роль в представлении и манипулировании данными на двоичном уровне. Побитовые операции...
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Приходилось ли вам сталкиваться с требованиями, в которых вас могли попросить поднять тревогу или выдать ошибку, когда метод Java занимает больше...
Полный курс Java для разработчиков веб-сайтов и приложений
Полный курс Java для разработчиков веб-сайтов и приложений
Получите сертификат Java Web и Application Developer, используя наш курс.
0
5
493
1

Ответы 1

Stacked не работает корректно с poi 4.12, я раскомментировал код в примере и бары находятся рядом друг с другом, а не друг над другом.

нашел решение в этом посте: roytuts.com/… chart.getCTChart().getPlotArea().getBarChartArray(0).addNewO‌​verlap().setVal((byt‌​e) 100);

Doron Levi 07.12.2020 22:54

Другие вопросы по теме