我需要根据时间段更新图表。
目前图表正在更新所有值。
现在我需要通过
更新图表如何在javascript或jquery中进行操作。??
我创造了小提琴来解释我的情况
这是html
<select id="SelectPeriod" >
<option value="last3Months">Last 3 months</option>
<option value="last6Months">Last 6 months</option>
<option value="last9Months">Last 9 months</option>
<option value="last12Months">Last 12 months</option>
<option value="last15Months">Last 15 months</option>
<option value="last18Months">Last 18 months</option>
<option value="last24Months">Last 24 months</option>
</select>
<div id="chart"></div>
JS
var calculation = [["Actual value","Targeted value"]],
result = [[100, 190],[115,190],[250, 190],[23,190],[190, 190],[170,190],
[100, 190],[115,190],[250, 190],[23,190],[190, 190],[170,190],[100, 190],
[115,190],[250, 190],[23,190],[190, 190],[170,190],[100, 190],[115,190],
[250, 190],[23,190],[190, 190],[170,190]];
calculation = calculation.concat(result.sort(function (a, b) { }));
var chart = c3.generate({
bindto: '#chart',
data: {
rows: calculation,
type: 'bar',
}
});
这是我的自定义,尝试
$("#SelectPeriod").change(function (evt) {
var chartSelection = $("#SelectPeriod").val();
var chart = c3.generate({
data: {
rows: calculation
}
});
});
详细说明
我需要根据时间范围更新图表。
如果用户选择6个月的下拉菜单,我只需要显示6个月的图表。
目前整整24个月都在更新。
现在我需要对数据进行分类。
如何在javascript或jquery中执行此操作? 请帮帮我。
感谢任何帮助
答案 0 :(得分:0)
请参阅http://jsfiddle.net/Yq3DW/99/
我更改了value
个选项,以指示每个应显示多少个月,并在change
事件中slice
显示原始数组。我使用+ 1
在数组中包含第3个,第6个等项。
$("#SelectPeriod").change(function (evt) {
var chartSelection = $("#SelectPeriod").val();
var chart = c3.generate({
data: {
rows: calculation.slice(0, parseInt(chartSelection) + 1),
type:'bar'
}
});
});