Отказ от ответственности: Нет способа сделать это только Java. Вам нужно будет стилизовать диаграмму, используя CSS. Хотя цвет можно изменить с помощью настроек стилей в Java, как показано здесь Пользовательские цвета древовидной карты , я буду придерживаться подхода CSS ниже
Документация, на которую вы ссылаетесь Это для Vaadin 8, который использует другую версию библиотеки Highcharts. В Vaadin 14 вам необходимо настроить параметры через css. Специально для вашего случая использования нет примера, но вы можете найти в ссылках ниже всю необходимую информацию:
- CSS конфигурация файла и правильная аннотация импорта CSS Стиль
- Имена классов, которые можно использовать для создания стилей диаграмм API Highcharts
Цвет задается с помощью класса .highcharts-color-{n}
(или свойства --vaadin-charts-color-{n}
, что является предпочтительным здесь), где n может быть определено для параметров на стороне Java, например: plotOptions.setColorIndex(2);
. Пример старшей диаграммы для цветов можно найти здесь: CSS Цвета
Для пунктирной линии css Вы можете проверить это: CSS dashstyle .
В целом, это должно сработать:
- Создать
chartStyles.css
файл - Поместить туда содержимое ниже:
:host {
--vaadin-charts-color-2: red;
}
.highcharts-series-0 {
stroke-dasharray: 1, 3;
}
Импортируйте стиль, используя: @CssImport(value = "./styles/chartStyles.css", themeFor = "vaadin-chart", include = "vaadin-chart-default-theme")
Параметры печати имеют colorIndex 2 (так как это значение в css, мы ссылаясь на):
PlotOptionsAreasplinerange range=new PlotOptionsAreasplinerange();
range.setColorIndex(2);
dataSeries.setPlotOptions(range);
После этого цвет диаграммы должен измениться. Вы можете пропустить присвоение индекса и использовать --vaadin-charts-color-0
, если у вас есть только один график на странице. Если нет, я бы предложил добавить названия тем в диаграмму и настроить файл css для их использования. Таким образом, вы можете быть уверены, что затронут только нужный вам график.