我对com.byteowls.vaadin.chartjs chartjs有以下问题-我不知道如何在不删除标签的情况下有条件地删除网格线。以下是我创建chartjs的代码:`
BarChartOptions options = barChartConfig.options();
options.title().text(title).display(true);
options.legend().position(Position.RIGHT);
options.tooltips().mode(InteractionMode.X);
options.legend().labels().boxWidth(10).fontSize(10);
options.tooltips().position(Tooltips.PositionMode.NEAREST);
LinearScale yScale = new LinearScale();
yScale.stacked(true);
yScale.ticks().beginAtZero(true);
options.scales().add(Axis.Y, yScale);
DefaultScale xScale = new DefaultScale();
xScale.stacked(true);
xScale.ticks().autoSkip(false).callback("function(value,index,values){\n" +
"if(index % 2 !== 0){\n" +
" return undefined;\n" +
"\n" +
"} \n" +
"return value;\n" +
"\n" +
"}");
xScale.gridLines().lineWidth(1).color("rgb(0,0,0)");
options.scales().add(Axis.X, xScale);
ChartJs horizontalStackedChart = new ChartJs(barChartConfig);
horizontalStackedChart.setHeight(70, Sizeable.Unit.PERCENTAGE);
horizontalStackedChart.setWidthFull();
return horizontalStackedChart;`
这是图片:图表图片1
这是我想要的图像,但是上面图表中的标签是:图表图像2
后来我在互联网上发现有一个回调函数,用于滴答声的方法很多,但没有人帮助。我想在两个数据集后显示网格线,它在“图表图像2”中的外观,但标签不见了。我不明白为什么会这样。实际上可能吗?提前感谢您的帮助!
1条答案
按热度按时间iqxoj9l91#
您可以将xaxis网格线的linecolor设置为一个函数,在该函数中,您可以将要删除的所需线条设置为完全不透明的颜色。
例子: