提高出口图表的高度

时间:2013-11-20 16:25:24

标签: javascript jquery highcharts

使用最新的highcharts(3.0.7)。我们正在尝试在导出时将文本添加到图表的顶部。要做到这一点,我需要增加spacingTop,以便我们不会覆盖任何图表元素。然后,对于相同的图表高度,这会导致图表变得不那么高spacingTop。如何获取当前图表高度并在导出时为其添加X金额?我试过了:

exporting: {
    sourceWidth: 400,
    //sourceHeight: this.chartHeight,
    //sourceHeight: this.chartHeight + 200,
    scale: 1, //(default)
    chartOptions: {
        subtitle: null,
        height: this.chartHeight + 200
    }
}

这似乎被忽略了。见fiddle。这只是一个测试,看看我是否可以这样做。似乎它应该是直截了当的。如果我取消注释sourceHeight它仍然没有达到我的预期 - 图表仍然是400px高。因此this.chartHeight似乎不包含任何内容。

最后,这个高度变化代码将存在于我们调用的函数中:

chartMainLoc.exportChart({
    type: 'image/jpeg',
    sourceHeight: this.chartHeight + 200,
    sourceWidth: this.chartWidth,
    scale: 1
}, {
    chart: {
        events: {
            load: function () {
                this.renderer.text('Occupational Employment and Wage Rates (OES) for Multiple Occupations in Louisiana in 2012<br /> The graph below shows the annual occupational employment and annual wage data for Multiple Occupations in Louisiana in 2012.<br /> ', 5, 15).attr({
                    rotation: 0
                }).css({
                    color: '#4572A7',
                    fontSize: '10px',
                    fontStyle: 'italic',
                    width: this.chartWidth
                }).add();
                this.renderer.rect(5, 5, this.chartWidth - 10, 60, 5).attr({
                    'stroke-width': 2,
                    stroke: 'black',
                    zIndex: 2
                }).add();
            }
        },
        spacingTop: 200,
        shadow: false
    }
})

由于我事先并不知道图表的高度或宽度,所以我必须以某种方式得到这个值。

1 个答案:

答案 0 :(得分:1)

您需要设置包含对象(chart / series等)的图表选项,例如示例http://jsfiddle.net/GQUDJ/2/