Angular 2 图表 - 改变点半径

Rok*_*545 5 javascript angularjs chart.js ng2-charts angular

我正在使用 ng2-charts ( https://github.com/valor-software/ng2-charts ) 为我的 Angular 2 应用程序创建一个折线图。图表工作正常 - 当您将鼠标悬停在一个点上时,该点会自动变为白色以说明它正被鼠标悬停。我想通过代码手动模仿这种行为。

当您单击,将鼠标悬停在一个点上时,我有单击事件返回一个包含图表的对象(见图)。从该对象中,我设法找到了一些似乎控制点半径的值:_model.hitRadius、_model.radius、_view.hitRadius 和 _view.radius(见图)。 在此处输入图片说明

我尝试在代码中更改这些值,但图表点没有任何反应。

    e.active[0]._model.hitRadius = 5;
    e.active[0]._model.radius = 10;
    e.active[0]._view.hitRadius = 5;
    e.active[0]._view.radius = 10;  
Run Code Online (Sandbox Code Playgroud)

我还尝试在更改值后添加 'e.update()',但我收到一条错误消息,指出 update() 不是函数。

Hav*_*uit 5

您可以在选项中设置其中一些值,然后将它们传递到canvas指令中。把[options]标签放在html中:

<div style="display: block;">
    <canvas baseChart width="2" height="1"
            [datasets]="chartData"
            [labels]="chartLabels"
            [options]="chartOptions"
            [colors]="chartColors"
            [legend]=true
            chartType=line></canvas>
</div>
Run Code Online (Sandbox Code Playgroud)

然后在 TypeScript 中创建选项对象:

private chartOptions = 
{ 
    responsive: true, 
    elements: 
    { 
        point: 
        {
            radius: 1,
            hitRadius: 5,
            hoverRadius: 10,
            hoverBorderWidth: 2
        }
    }
};
Run Code Online (Sandbox Code Playgroud)

更多关于 ChartJS 点配置