首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ChartJS -在平底锅中找到最小和最大的标签(缩放时)

ChartJS -在平底锅中找到最小和最大的标签(缩放时)
EN

Stack Overflow用户
提问于 2019-10-12 09:22:39
回答 1查看 1K关注 0票数 2

我有这样的图表:

现在,当我缩放时,我需要找到一个平底锅内的最小标签和最大标签,例如:

最小值为2018-07-16,最大值为2018-11-3

对于摇摄,我使用以下属性:

代码语言:javascript
复制
pan: {
    enabled: true,
    mode: 'x',
    onPanComplete: function(e) {
        console.log(e)
    }
}

如果我看一下返回的对象,我会看到很多关于这个平底锅的信息。但我找不到相关的信息来总结这些极端的标签。

我认为属性chartArea就足够了,但是对于两个非常不同的pans,它的值并没有不同。configboxes和许多其他属性也是如此。

我怎样才能找到这些极端标签?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-10-29 21:41:06

我想你是在用图表-插件-缩放来做这个。

深入研究传递给chart函数的onPanComplete对象,可以发现scales属性被更新以实现缩放‘n’that功能。知道了这一点,检索包含您要寻找的label属性的第一个和最后一个刻度对象是非常简单的。

下面是演示通过onPanComplete访问蜱并将它们输出到页面的代码片段:

代码语言:javascript
复制
let ft = document.getElementById("ft"),
  lt = document.getElementById("lt");

new Chart(document.getElementById("chart"), {
  type: "line",
  data: {
    labels: ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j'],
    datasets: [{
      data: [0, 1, 2, 4, 8, 16, 32, 64, 128, 256]
    }]
  },
  options: {
    maintainAspectRatio: false,
    scales: {
      xAxes: [{
        ticks: {
          min: 'c',
          max: 'h'
        }
      }]
    },
    plugins: {
      zoom: {
        pan: {
          enabled: true,
          mode: 'x',
          onPanComplete: function({
            chart
          }) {
            let ticks = chart.scales["x-axis-0"]._ticks;
            ft.innerText = JSON.stringify(ticks[0]);
            lt.innerText = JSON.stringify(ticks[ticks.length - 1]);
          }
        }
      }
    }
  }
});
代码语言:javascript
复制
<script src="https://cdn.jsdelivr.net/npm/chart.js@2.9.1"></script>
<script src="https://cdn.jsdelivr.net/npm/hammerjs@2.0.8"></script>
<script src="https://cdn.jsdelivr.net/npm/chartjs-plugin-zoom@0.7.4"></script>
<canvas id="chart" style="max-height:125px"></canvas>
<p>
  First tick: <span id="ft"></span><br>Last tick: <span id="lt"></span>
</p>

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58352678

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档