【问题标题】:Highcharts chartWidth no longer works with chart.getSVG()Highcharts chartWidth 不再适用于 chart.getSVG()
【发布时间】:2013-07-08 23:29:51
【问题描述】:

如果我错了,请纠正我,但我可以发誓chart.chartWidth 用于返回getSVG() 返回的确切宽度属性。 我会解释的。 假设我以一个 div 为目标,该 div 强制图表以通过视图源读取的以下内容呈现。 <svg xmlns="http://www.w3.org/2000/svg" version="1.1" width="270" height="300">

现在如果我打电话给chart.highcharts().chartWidth,我会得到 270。太好了! 但是如果我再打电话给chart.highcharts().getSVG() 我会知道这是一个空缺 <svg xmlns="http://www.w3.org/2000/svg" version="1.1" width="400" height="600">

我一直在使用并添加一个导出功能,它将多个图表组合成一个图表,我通常需要进行一些缩放以使其看起来不错。比例取决于最初渲染的大小,而不是默认大小,现在它导致了一个巨大的问题。

getSVG 不应该返回代表图表的 svg,因为它出现在 html 中?

【问题讨论】:

    标签: highcharts


    【解决方案1】:

    你试过sourceWidthscale参数吗?

    【讨论】:

    • 我正在使用手动导出,它基本上是一个临时表单元素,它将手动创建的巨大 svg 字符串提交到 highcharts 服务器。它不考虑 sourceWidth 或 scale 。不过,我找到了解决办法。如果您将 chartWidth 和 chartHeight 传递给 getSVG(),您将获得与当前浏览器中的内容相匹配的 SVG。 var chart = myChart.highcharts(); var svg = chart.getSVG({chart:{width:chart.chartWidth, height:chart.chartHeight}});
    • 谢谢乔尔,我遇到了同样的问题,可以确认这个工作:chart.getSVG({chart:{width:chart.chartWidth, height:chart.chartHeight}});
    • 谢谢乔尔 +1,为我解决这个问题工作
    猜你喜欢
    • 2013-01-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-05-17
    • 2019-10-23
    • 2018-02-13
    • 2013-01-27
    相关资源
    最近更新 更多