RGraph累加填充折线图tooltips不显示问题求助
RGraph Line图表开启
filledAccumulative后tooltips数组失效问题解决 问题原因
当启用filledAccumulative: true时,RGraph会将多组数据合并为单个累积填充区域,而非保留独立的数据系列图层。此时tooltips配置不再支持数组形式(对应多个独立数据系列),RGraph无法将数组中的两组提示分别匹配到已合并的累积区域,导致提示框完全无法触发。
而仅传入tooltips1时,RGraph会将其视为整个累积区域的提示配置,因此能正常显示对应数据点的提示。
解决方案
方案1:整合提示内容(保留累积填充效果)
将tooltips设置为与数据点数量一致的数组,每个元素整合两个数据系列的信息,示例代码:
const chart = new RGraph.Line({ id: canvas.id, data: [minData, maxDataA], options: { filled: true, filledAccumulative: true, colors: ["transparent", "rgba(178,240,241,1)"], // 整合两个数据系列的提示文本 tooltips: minData.map((minVal, idx) => `最小值: ${minVal}\n最大值: ${maxDataA[idx]}`), // 其余配置项省略 }, }).draw();
方案2:关闭累积填充(保留独立提示)
如果不需要累积填充效果,可将filledAccumulative设为false,此时tooltips: [tooltips1, tooltips2]即可正常分别触发两个数据系列的提示框。
方案3:自定义触发逻辑(进阶)
若需保留累积填充且分别触发不同数据系列的提示,可通过tooltipsEvent配置自定义触发逻辑,判断鼠标位置对应的原始数据系列,手动调用提示框API:
const chart = new RGraph.Line({ id: canvas.id, data: [minData, maxDataA], options: { filled: true, filledAccumulative: true, colors: ["transparent", "rgba(178,240,241,1)"], tooltipsEvent: function (e, shape) { // 获取当前数据点索引 const idx = shape.index; // 自定义提示内容,可根据鼠标位置进一步区分数据系列 RGraph.Tooltip.show(e, `最小值: ${minData[idx]}\n最大值: ${maxDataA[idx]}`); }, // 其余配置项省略 }, }).draw();
内容的提问来源于stack exchange,提问作者abe1432181
相关产品推荐
相关产品推荐

