在ChartJS LineGraph中隐藏点

Dan*_*Dan 33 javascript chart.js

最初我将每个点的填充颜色设置为完全透明.如果我在图表上运行鼠标,则会弹出这些点.我想隐藏所有点,以使线图平滑.

Shi*_*vam 54

您可以通过在配置选项中设置point的radius属性来实现此目的,如下所示:

var chartConfig = {
            type: 'line',
            options: {
                elements: {
                    point:{
                        radius: 0
                    }
                }
            }
        }
Run Code Online (Sandbox Code Playgroud)

点的工具提示也将消失.

  • 这个配置是全局的,但是我得到了一个包含3行图表的图表,我只想禁用其中一个 (3认同)
  • @第五,您可以在每个单独的数据集对象上设置“pointRadius”属性。请参阅下面@Alexander 的回答。 (3认同)

Ale*_*der 31

您可以将其pointRadius设置为零.

var myChart = new Chart(
    ctx, {
        type: 'line',
        data: {
            labels: [...]
            datasets: [
              {
                data: [...],
                pointRadius: 0,  # <<< Here.
              }
            ]
        },
        options: {}
    })
Run Code Online (Sandbox Code Playgroud)

  • 我添加了“borderWidth: 1”和“pointRadius: 0.5”,因为我还需要一条细线和小点来悬停在它们上方。 (2认同)
  • 我还需要添加 `pointHitRadius: 0` 来禁用工具提示。 (2认同)

小智 7

我遇到了同样的问题,但我想保持悬停选项处于活动状态。\n我的解决方案是:

\n
const config = {\n        type: 'line',\n        data: {\n            datasets:[{\n                label: 'Temp\xc3\xa9rature',\n                borderColor: 'rgb(255, 99, 132)',\n                data: tempE,\n                pointStyle: 'rect',\n            }]\n        },\n        options: {\n            elements:{\n                point:{\n                    borderWidth: 0,\n                    radius: 10,\n                    backgroundColor: 'rgba(0,0,0,0)'\n                }\n            }\n        }\n    };\n
Run Code Online (Sandbox Code Playgroud)\n