質問がばかげているかもしれません、すみません。$.each ループを使用して、JSON 内のさまざまなオブジェクトをループ処理しています。それぞれについて、次のコードを使用して Highcharts を使用してグラフを作成します。
var chart = new Highcharts.Chart({
chart: {
renderTo: ('chart' + index),
type: 'line',
backgroundColor:'rgba(255, 255, 255, 0.0)', // Transparent BG
width:190,
height: 80,
events:{
click: function(e){
drawChart('area',index);
}
}
},
plotOptions: {
line: {
marker: { enabled: false }
}
},
xAxis: {
categories: xAxis,
labels: { enabled:false },
lineWidth:0,
tickWidth: 0,
lineColor: '#FFFFFF'
},
yAxis: {
title: { text: null }, // Set the text to null to disable the label
labels: { enabled: false },
gridLineWidth: 0
},
series: [{
data: yAxis,
color: '#FFF'
}]
});
ご覧のとおり、plotArea でクリックを有効にする必要があるため、「クリック」イベントを指定しました。クリックは、指定された でグラフを描画する別の関数を呼び出す必要がありますが、機能していません:( drawChart() 関数は次のとおりです。
function drawChart(ctype,index){
var chartWidth = $("#container").width() - 50;
var chart1 = new Highcharts.Chart({
chart: {
renderTo: (ctype + 'Chart'),
backgroundColor:'rgba(255, 255, 255, 0.0)', // Transparent BG
width: chartWidth,
height:400,
type: ctype
},
plotOptions: {
line: {
marker: { enabled: false }
},
series: {
shadow: { color: '#CCC' },
stickyTracking: false
}
},
xAxis: {
categories: itemsX[index]
},
series: [{
data: itemsY[index],
type: ctype,
color: '#CCCCCC'
}]
});
} // Close drawChart()
誰かが理由を理解するのを手伝ってくれますか? ありがとう!