所以我有这个带有 jqplot 的图表
如果您仔细观察,您会发现在 4 和 5 下实际上有要显示的数据,但是条形太短,无法显示数字标签。我有悬停文本,但栏也太小,鼠标无法注册。在 3 之下,实际上在红色和绿色之间还有另一个条,但它也太小而无法显示。
在这种情况下我该怎么办?有什么建议么?
我有几个想法,但不知道如何实现:
仅当条形比最高的条小一定百分比时,才在每个条形的旁边/顶部显示数字标签。
当鼠标在给定列中时显示悬停文本,而不仅仅是在栏本身上。此悬停文本将显示所有 3 种颜色的数据,而不仅仅是一种颜色。
谢谢!
编辑:
我通过编写自定义荧光笔类让悬停文本显示所有 3 种颜色
highlighter: {
show: true,
...
tooltipContentEditor:tooltipContentEditor,
}
...
function tooltipContentEditor(str, seriesIndex, pointIndex, plot) {
var data1 = plot.data[2][pointIndex];
var data2 = plot.data[1][pointIndex];
var data3 = plot.data[0][pointIndex];
var value = data1 + "-" + data2 + "-" + data3;
return value;
}
当然,这仅适用于每个条形图始终有 3 种颜色的情况,适用于我,所以我现在正在使用。现在我需要弄清楚当条太小时如何让荧光笔更容易显示。
编辑2:
我想出了如何让打火机显示出来。
创建一个虚拟系列,我将其设置为给定列和最高列之间的差异
将颜色更改为 rgb 透明,去除阴影,去除高光和其他任何东西。
在将鼠标悬停在不可见栏或它下方的任何栏上时,它现在将显示完整的统计数据,耶!