javascript - 绘制图形后如何更新 highcharts 中的 renderer.text()?

标签 javascript svg highcharts

在我使用 highcharts 库的应用程序中,我使用 svg 绘制函数来处理我的图表加载/重绘事件。

我将所有图表数据设置为相等的值,以便所有堆栈具有相同的高度,而实际数据保存在以这种方式绘制为 svg 的临时数组中:

var dataFormat = getLabelByStatus(curCount, yearsObj[i].data[0]);

                        var css = (point.color == USERS_YEARS_COLOR) ? highchartAttr().dataLabelsBoldStyle : highchartAttr().dataLabelsStyle;

                        //  draw text
                        var text = renderer.text(dataFormat, -9999, -5).add(point.label);

                        text.attr({
                            x: (lineLength - text.getBBox().width) / 3
                        }).css(css)

效果很好,但现在我想在回调函数中更改此数据。 我仍然可以访问渲染器对象,但我既找不到我的旧打印数据来编辑它,也找不到合适的编辑函数。

最佳答案

您可以像这样将自定义文本元素保存在变量或图表中

    chart.customText = chart.renderer.text('Series 1', 140, 140)
    .attr({
        rotation: -25
    })
    .css({
        color: '#4572A7',
        fontSize: '16px'
    })
    .add();

然后你可以访问它并使用attr({text})来改变它的文本

chart.customText.attr({
  text: Math.random()
})

示例:http://jsfiddle.net/28nwb7pj/

关于javascript - 绘制图形后如何更新 highcharts 中的 renderer.text()?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43997085/

相关文章:

javascript - 如何根据 React 中变量的给定名称导入和渲染 svg 文件?

javascript - 如何使用 highcharts 创建列字符,其中每列都有不同的颜色

javascript - 更喜欢解构——已经存在的变量

javascript - 使用 JavaScript 数学将字节转换为千兆字节

javascript - 在 Angular 2 的单元测试中模拟基类

javascript - 有没有办法创建一条从时间轴上的标记到文本的线?

css - 如何通过 CSS 更改 SVG 路径的填充颜色

javascript - 在 Electron (原子壳层)中使用 'before-quit' 事件

javascript - 重新对齐 Highcharts 上条形图内部和外部的标签

highcharts - 样条系列上的 Highstock 范围近似