У меня есть линейная диаграмма Vaadin Charts Flow 6, и я хочу определить некоторые из VaadinIcons как маркеры.
Как я могу достичь этого?
MarkerSymbol – это интерфейс, реализованный как
- MarkerSymbolEnum для предоставления предопределенных маркеров, таких как, например. круг, квадрат, ромб и т. д.
- MarkerSymbolUrl для предоставления URL-адреса изображения, которое будет использоваться в качестве маркера.
AtomicInteger xValue = new AtomicInteger(0);
List<Double> yValues = new Random( ).doubles(10, -10, 10).boxed( ).collect(Collectors.toList( ));
List<DataSeriesItem> items = yValues.stream( )
.map(yValue -> new DataSeriesItem(xValue.getAndIncrement( ), yValue))
.collect(Collectors.toList( ));
/* Instead of MarkerSymbolEnum or MarkerSymbolUrl, retrieve a VaadinIcon*/
items.forEach(item -> item.getMarker( ).setSymbol(MarkerSymbolEnum.DIAMOND));
items.forEach(item -> item.getMarker( ).setSymbol(new MarkerSymbolUrl("foo/bar.png")));
// new Icon(VaadinIcon.CHEVRON_UP);
DataSeries series = new DataSeries("example");
series.setData(items);
Chart chart = new Chart(ChartType.LINE);
chart.getConfiguration( ).addSeries(series);
Я не видел возможности получить URL-адрес VaadinIcon или напрямую установить его.