총계를 얻으려면 데이터를보고 클릭 된 항목에 해당하는 시리즈의 요소를 찾아 값을 합산해야합니다.
<div id="placeholder" style="width:600px;height:300px;"></div>
<div id="clickdata" ></div>
<script id="source">
$(function() {
var d1 = [];
for (var i = 0; i <= 10; i += 1)
d1.push([i, parseInt(Math.random() * 30)]);
var d2 = [];
for (var i = 0; i <= 10; i += 1)
d2.push([i, parseInt(Math.random() * 30)]);
var d3 = [];
for (var i = 0; i <= 10; i += 1)
d3.push([i, parseInt(Math.random() * 30)]);
var stack = 0, bars = true, lines = false, steps = false;
function plotWithOptions() {
return $.plot($("#placeholder"), [ d1, d2, d3 ], {
grid: { clickable: true },
series: {
stack: stack,
lines: { show: lines, fill: true, steps: steps },
bars: { show: bars, barWidth: 0.6, hoverable: true, clickable: true }
}
});
}
var plot = plotWithOptions();
function getTotalForIndex(index) {
var total = parseFloat(d1[index][1]) + parseFloat(d2[index][1]) + parseFloat(d3[index][1]);
return total;
}
$("#placeholder").bind("plotclick", function (event, pos, item) {
if (item) {
$("#clickdata").text("You clicked point " + item.dataIndex + " in " + item.series.label + ". which has total value "+ getTotalForIndex(item.dataIndex));
plot.highlight(item.series, item.datapoint);
}
});
});
</script>
나는 시리즈의 총을 찾고 있지 않다. 나는 술집에서 합계를 찾고있다. series1이 [[1,2], [2,6]]이고 series2가 [[1,12], [2,52] 인 경우 bar1 - 14 및 bar2 = 58이 아닌 series1 = 8을 얻고 싶습니다. series2 = 64입니다. flothover 이벤트에 대한 항목을 살펴 봤지만 막대 데이터가 아니라 시리즈 데이터 만 볼 수 있습니다. – ryanzec
예제를 실행하면 바가 아닌 시리즈의 합계가됩니다. 인덱스에 대한 합계를 얻고 막대 인덱스에 대한 각 계열의 값을 찾고 합계 – Richard
Opps를 반환합니다. 코드 예제가 스크롤 가능한 것을 인식하지 못했지만 작동해야합니다. 나는 그것을하지 않아도되기를 바랬다. 술집 전체가 제공 할 플롯 자체가 될 것이라고 나는 예상했다. – ryanzec