小编Oli*_*ver的帖子

如何使用 Charts.js 2 从图表外部触发悬停模式?

我想通过单击按钮同时在多个图表上重现悬停行为。我正在考虑将等效的按钮 ID 添加到图形标签中。

它会是什么样子

例如,通过单击橙色按钮(参见附图),我获得了他的 ID,并且我想触发每个图表的每个橙色项目中的事件悬停(其标签与按钮的 id 相同)。

我可以检测到哪个项目具有与我的 id 相同的标签,但我不知道如何在其上复制悬停行为。

有没有办法强制在图表中的项目上设置悬停模式?

我的 HTML:

<div class="graph">
  <canvas id="ctx"></canvas>
  <button type="button" class="btn btn-primary" id="OCG">Test</button>
</div>
Run Code Online (Sandbox Code Playgroud)

我的JS:

var ctx = document.getElementById('ctx').getContext('2d');
var ocacolor = '#EE8B54',
    ocbcolor = '#C2B49B',
    ocbacolor = '#AECF86',
    ocgcolor = '#E97676',
    ocpcolor = '#088DA5';
var backgroundcolor = [ocacolor, ocbcolor, ocbacolor, ocgcolor, ocpcolor]

data = {
    datasets: [{
        data: [1, 1, 1, 4, 1],
        backgroundColor: backgroundcolor
    }],
    labels: [
        'OCA',
        'OCB',
        'OCBA',
        'OCG',
        'OCP'
    ]
};

//CREATING CHART
var myDoughnutChart = …
Run Code Online (Sandbox Code Playgroud)

javascript charts chart.js

5
推荐指数
1
解决办法
3320
查看次数

如何使用mapbox-gl-js/maplibre-gl中的表达式根据缩放级别显示/隐藏标签?

我有一个带有图标的点图层,我想仅从特定的缩放级别(9)显示除图标之外的标签。我想避免创建专用的标签层。查看表达式文档,StetZoom应该给我想要的结果,但它不起作用。

按照这个答案,我尝试根据缩放级别更改文本的大小,但无论缩放如何,文本将始终具有默认大小(此处 7)我是否遗漏了某些内容还是一个错误?我正在使用 Maplibre

layout: {
          "icon-image": "border_crossing",
          "icon-size": 0.5,
          "icon-allow-overlap": true,
          'text-field': ['get', 'loc_type'],
          'text-variable-anchor': ['top'],
          'text-radial-offset': 0.5,
          'text-justify': 'auto',
          "text-size": [ "step", 
              ["zoom"], 
              0,0,
              9,15,
              7
            ]
        }
Run Code Online (Sandbox Code Playgroud)

mapbox-gl-js maplibre-gl

5
推荐指数
1
解决办法
1785
查看次数

标签 统计

chart.js ×1

charts ×1

javascript ×1

mapbox-gl-js ×1

maplibre-gl ×1