我有一个现有的高图(类型行),里面有一些系列。我给了他们特别的dashStyles。我正在" window.open()"复制图表。窗口,我复制主图表的系列,并将它们粘贴到新窗口的高级图表中。
当我遍历图表以创建我自己的cloneSeries
对象时,我遇到了遇到dashStyle的问题。
这是我目前正在尝试的简化版本
var hcCharts = $(this).closest(".chartWrapper").find(".chartContainer").highcharts()
var cloneSeries = [];
for (var i = 0; i < hcCharts.series.length; i++) {
cloneSeries.push({
name: hcCharts.series[i].name,
data: y,
color: hcCharts.series[i].color,
dashStyle: hcCharts.series[i].dashStyle, //not working!
dataLabels: {
enabled: true,
}
})
}
然后在window.open()文档中
$(".largeChart").highcharts({
chart: {
type: "line"
},
tooltip: {
shared: true
},
series: cloneSeries, //cloneSeries is passed to the series option
title: { text: title },
exporting: { enabled: false },
credits: {
text: '',
}
});
这个系列正在传递数据,名称和颜色。但不是dashStyle。
请不要犹豫要求澄清
答案 0 :(得分:2)
似乎dashStyle
属性位于series.options
。我建议你试试:
var hcCharts = $(this).closest(".chartWrapper").find(".chartContainer").highcharts()
var cloneSeries = [];
for (var i = 0; i < hcCharts.series.length; i++) {
cloneSeries.push({
name: hcCharts.series[i].name,
data: y,
color: hcCharts.series[i].color,
dashStyle: hcCharts.series[i].options.dashStyle, // << Line modified
dataLabels: {
enabled: true,
}
})
}