1
我有不同的数据,这意味着有些数据看起来更具可读性,而其他数据则需要对数刻度。amcharts对数刻度切换
我想画一个堆栈区域图,通过下面的代码
AmCharts.makeChart("amchart-metrics-history-"+tag_id, {
"type": "serial",
"theme": "dark",
"titles": [{
"text": "Tag Metrics",
"size": 15
}],
"pathToImages": "/static/img/amcharts/",
"legend": {
"equalWidths": true,
"periodValueText": "",
"position": "bottom",
"valueAlign": "left",
"valueWidth": 100
},
"dataProvider": data.data,
"dataDateFormat": "YYYY-MM-DD HH:NN:SS",
"graphs": [{
"fillAlphas": 0.6,
"lineAlpha": 0.4,
"title": "Malware",
"valueField": "malware_count",
"color": "#fff"
}, {
"fillAlphas": 0.6,
"lineAlpha": 0.4,
"title": "Benign",
"valueField": "benign_count"
}, {
"fillAlphas": 0.6,
"lineAlpha": 0.4,
"title": "Grayware",
"valueField": "grayware_count"
}],
"valueAxes": [{
"stackType": "regular",
"title": "Sample Count"
}],
"plotAreaBorderAlpha": 0,
"marginTop": 10,
"marginLeft": 0,
"marginRight":30,
"marginBottom": 0,
"chartScrollbar": {},
"chartCursor": {
"cursorAlpha": 0
},
// X-Axis values
"categoryField": "time",
"categoryAxis": {
"parseDates": true,
//"startOnAxis": true,
//"axisColor": "#DADADA",
//"gridAlpha": 0.07,
"title": "Date",
"minPeriod": "mm",
},
"export": {
"enabled": false
},
"zoomControl": {
"zoomControlEnabled": true,
},
// Y-Axis specific
"valueAxes": [{
"logarithmic": true,
}]
});
我试图做到的是重绘一次我切换Y比例。我一直在尝试使用以下内容
$("#scale_change_"+tag_id).change(function() {
if ($(this).is(":checked")) {
am_chart.valueAxes[0].logarithmic = true;
} else {
am_chart.valueAxes[0].logarithmic = false;
}
am_chart.validateData();
});
这不起作用。有人可以阐明我应该做什么,而不是切换规模,然后强制重绘?理想情况下,堆叠应该在尺度变化之间持续...
可以请你提供Jsfiddle吗? –
https://jsfiddle.net/ake2uqqj/2/如果我将默认设置为对数,它也会出现奇怪的现象。 – geudrik
https://jsfiddle.net/ake2uqqj/3/现在尝试 –