Chart.js - 悬停后数据点变小

时间:2016-09-22 10:02:28

标签: javascript graph chart.js

我使用Chart.js创建雷达图。我已经为每个数据集设置了数据点的大小(半径)。但是,当我将鼠标悬停在数据点上时,半径会变小并保持这样的方式,如下所示:

before after

这是我如何生成图表:

new Chart($('#graph'), {
    type: 'radar',
    data: {
        labels: ['a','b','c'],
        datasets: [
            {
                label: 'aaa',
                data: [10,15,5],
                backgroundColor: 'rgba(247, 151, 35, 0.5)',
                borderColor: 'rgba(247, 151, 35, 1)',
                pointBackgroundColor: 'rgba(247, 151, 35, 1)',
                pointBorderColor: "#fff",
                pointRadius: 5,
                borderWidth: 1
            }
        ]
    },
    options: {
        scale: {
            type: 'radialLinear',
            ticks: {
                // hide tick labels
                display: false,
                min: 0,
                max: 20,
                stepSize: 1
            },
            gridLines: {
                // hide lines
                display: false
            }
        },
        legend: {
            position: 'bottom'
        }
    }
});

这里有一个小提琴,你可以看到自己的效果:https://jsfiddle.net/nj4qehLm/

如何使数据点保持我设置的大小,以便在我悬停时什么都不会改变?为什么这首先发生?

2 个答案:

答案 0 :(得分:4)

由于某些原因,public static class EffectClass { public static void ApplyEffect() { // Effect of awesomeness } } 似乎没有遵守Chart.js值,您可能需要将pointRadius属性集添加到{{1}的相同值这将解决问题。

像这样,

radius

工作小提琴https://jsfiddle.net/nj4qehLm/2/

HTML代码:

pointRadius

Javascript代码:

radius: 5,
pointRadius: 5,

希望这有帮助!

答案 1 :(得分:0)

Chartjs具有pointHoverRadius,它可以控制鼠标悬停时的点半径,因此只需使其与您的pointRadius相同即可:

pointRadius: 5,
pointHoverRadius: 5

使用radius属性对我不起作用。