ChartJS雷达尺度点

时间:2014-10-16 00:09:36

标签: javascript chart.js

我有一张雷达图表(几乎)显示我想要它。唯一的问题是比例应该达到20,但正如你在下面看到的那样,突出显示的点是17并且不在图表之内。如何缩放它以使最大点为20并且显示的突出显示点位于图表内?

enter image description here

我目前的代码是:

var radarChartData = {
    labels: ["ATT", "SPD", "POW", "DEF", "STA", "TEC"],
    datasets: [ {
        scaleOverride: true,
        scaleSteps: 5,
        scaleStepWidth: 5,
        scaleStartValue: 0,
        pointLabelFontSize: 16,
        fillColor: "rgba(0,120,0,0.2)",
        strokeColor: "rgba(0,120,0,1)",
        pointColor: "rgba(10,10,10,1)",
        pointStrokeColor: "#ccc",
        pointHighlightFill: "#333",
        pointHighlightStroke: "rgba(255,255,0,1)",
        data: [12,15,17,16,11,13] 
    } ] 
};

我认为scaleStepsscaleStepWidthscaleStartValue选项会改变这种情况,但似乎不会影响它。

编辑:它似乎不会影响另一组数据......

enter image description here

正如您在此处所看到的,17的值确实位于图表中。这个代码是:

var radarChartData = {
    labels: ["ATT", "SPD", "POW", "DEF", "STA", "TEC"],
    datasets: [ {
        scaleOverride: true,
        scaleSteps: 5,
        scaleStepWidth: 5,
        scaleStartValue: 0,
        pointLabelFontSize: 16,
        fillColor: "rgba(0,120,0,0.2)",
        strokeColor: "rgba(0,120,0,1)",
        pointColor: "rgba(10,10,10,1)",
        pointStrokeColor: "#ccc",
        pointHighlightFill: "#333",
        pointHighlightStroke: "rgba(255,255,0,1)",
        data: [19,17,15,6,16,15] 
    } ] 
};

2之间有什么区别?第二个值ATT的值为19,但它在图表中就好了。

1 个答案:

答案 0 :(得分:8)

好的,我发现我需要将scaleStepsscaleStepWidthscaleStart移动到新Radar图表的声明中,而不是在数据集。

window.onload = function(){
var ctx = document.getElementById("radarCanvas").getContext("2d");
window.myRadar = new Chart(ctx).Radar(radarChartData, {
responsive: false,
    pointDot:false,
    showTooltips: false,
    scaleOverride: true,
    scaleSteps: 4,
    scaleStepWidth: 5,
    scaleStartValue: 0
}); }

有关工作示例,请参阅http://jsfiddle.net/7p8ffvqx/