我正在使用Highcharts 3饼图,当我导出到图像时,生成的图表正在丢失一些数据标签。我该如何解决(解决方法)?
ps:使用highcharts服务器:export.hightcarts.com
此致
[更新]
生成的图像png文件中的小值被截断。但是在打印预览中没问题。
new Highcharts.Chart({
chart: {
renderTo: 'chart',
type: 'pie'
},
title: {
text: 'My Chart title'
},
plotOptions: {
pie: {
showInLegend: true,
dataLabels: {
enabled: true,
formatter: function() {
return '<b>' + this.point.name + '</b>: ' + Math.round(this.point.total * this.point.percentage / 100);
}
}
}
},
series: [{
type: 'pie',
name: 'Series name',
data: [
["Lorem", 88],
["Lorem ipsum", 4],
["Praesent nibh nulla", 12],
["Lorem ipsum dolor sit amet", 66],
["Praesent fringilla suscipit molestie", 30],
["Donec at lectus at nulla viverra lobortis", 11],
["Class aptent taciti sociosqu ad litora", 87],
["Mauris vulputate sem id arcu volutpat fermentum", 149],
["Vestibulum faucibus lectus", 113],
["Pellentesque habitant morbi tristique", 7],
["Etiam lacinia mi suscipit", 92],
["Proin semper risus in lacus semper", 9],
["Fusce id faucibus massa", 99],
["Suspendisse", 4],
["Quisque quis lectus et turpis laoreet", 101]
]
}],
exporting: {
enabled: true
}
});
jsFiddle :http://jsfiddle.net/6afyH/1/
答案 0 :(得分:6)
这是因为Highcharts没有检测到容器的width
。
您可以通过在sourceWidth
选项中添加选项exporting
来解决此问题:
exporting: {
enabled: true,
sourceWidth: 900
}
似乎sourceWidth
采用初始width
,因此如果图表在页面加载时稍微被截断,则在导出时它将是相同的,除非您在选项中指定它。
我更新了jsFiddle以举例说明这项工作:http://jsfiddle.net/6afyH/2/