javascript - HighCharts 漏斗带有居中标签而不是右侧标签

标签 javascript highcharts

我正在使用 HighCharts,特别是漏斗。

目前,值标 checkout 现在漏斗的右侧,但我需要它们在漏斗内居中。

这里是 JS Fiddle 的链接:Example Here

这也是代码:

$(function () {

    $('#container').highcharts({
        chart: {
            type: 'funnel',
            marginRight: 100
        },
        title: {
            text: 'Sales funnel',
            x: -50
        },
        plotOptions: {
            series: {
                dataLabels: {
                    enabled: true,
                    format: '<b>{point.name}</b> ({point.y:,.0f})',
                    color: (Highcharts.theme && Highcharts.theme.contrastTextColor) || 'black',
                    softConnector: true
                },
                neckWidth: '30%',
                neckHeight: '25%'

                //-- Other available options
                // height: pixels or percent
                // width: pixels or percent
            }
        },
        legend: {
            enabled: false
        },
        series: [{
            name: 'Unique users',
            data: [
                ['Website visits', 15654],
                ['Downloads', 4064],
                ['Requested price list', 1987],
                ['Invoice sent', 976],
                ['Finalized', 846]
            ]
        }]
    });
});

如何让这些标签在漏斗中居中?

最佳答案

我认为您可以在加载和重绘图表事件时使用 attr() 手动设置 dataLabels 的位置:

http://api.highcharts.com/highcharts/Element.attr

events: {
    load: function() {
      var chart = this;
      Highcharts.each(chart.series[0].data, function(p, i) {
        p.dataLabel.attr({
          x: (chart.plotWidth - chart.plotLeft) / 2,
          'text-anchor': 'middle'
        })
      })
    },
    redraw: function() {
      var chart = this;
      Highcharts.each(chart.series[0].data, function(p, i) {
        p.dataLabel.attr({
          x: (chart.plotWidth - chart.plotLeft) / 2,
          'text-anchor': 'middle'
        })
      })
    }
  }

在这里您可以找到它如何工作的示例: http://jsfiddle.net/bp03q6da/

关于javascript - HighCharts 漏斗带有居中标签而不是右侧标签,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39252365/

相关文章:

java - DWR 对 JavaScript 变量的响应

javascript - 如何将图例底部与 X 轴线对齐?

javascript - 将 XML 解析为 JSON 时遇到问题 - Javascript

javascript - 使用 labels.formatter 在 x 轴上打印目标标签

javascript - 为什么 Redux 在之前的 dispatch action 中返回旧状态?

javascript - angular chart.js 的数据属性中的表达式

javascript - Dispatch 不将操作发送到 reducer

javascript - 1行高CodeMirror实例

highcharts - 两个馅饼,一个带有独特元素的传说(合并传说)

jquery - 如何使用highchart整合市场深度图?