我看过类似的帖子,但无法弄清楚如何正确地做到这一点。许多答案建议覆盖比例,但图表的显示搞砸了。主要问题是我的数据太多,目前在Y轴上达到180000,随着时间的推移,它可能会进一步增加甚至下降。
如何优化它?这可能只是硬编码起始点为0,并将步骤等保持默认值?如果没有,那么如何优化这么多数据?
我在使用this回复
之后附上了一个屏幕短片我尝试过不同的scaleSteps和scaleStepWidth值,但它的扩展性不好。 我无法更改所有图表大小,因为这意味着要更改整个页面。
我的HTML代码如下所示
{% load static %}
<script src="{% static 'Chart.js' %}"></script>
<canvas align=center id='{{ module }}' height="250" width="250"></canvas>
<script>
var randomScalingFactor = function(){ return Math.round(Math.random()*4000)};
var data2 ={{stats_dates|safe}};
var lineChartData6 = {
labels : {{stats_dates|safe}},
datasets : [
{
label: "My Dataset",
fillColor : "rgba(255,0,255,0.3)",
strokeColor : "rgba(255,0,255,1)",
pointColor : "rgba(255,0,255,1)",
pointStrokeColor : "#fff",
pointHighlightFill : "#fff",
pointHighlightStroke : "rgba(255,0,255,1)",
data : {{count}}
}
]
}
var ctx = document.getElementById('{{ module }}').getContext("2d");
ctx.canvas.width = 500;
ctx.canvas.height = 450;
window.myLine = new Chart(ctx).Line(lineChartData6, {
responsive: false,
scaleOverride : true,
scaleSteps : 500,
scaleStepWidth : 500,
scaleStartValue : 0
});
</script>