当我在 amcharts 中选择一个部分时,如何获得准确的范围值?

Posted

技术标签:

【中文标题】当我在 amcharts 中选择一个部分时,如何获得准确的范围值?【英文标题】:How could I get the exact range value when I select a portion in amcharts? 【发布时间】:2021-12-03 18:11:03 【问题描述】:

我正在开发一个角度应用程序,并且正在使用图表库 amcharts。我想进行选择并获取所选部分的范围。这是代码:

    this.chart.cursor.behavior = "selectX";
    this.chart.cursor.events.on("selectended", function(ev) 
      var range = ev.target.xRange;
      var axis = ev.target.chart.xAxes.getIndex(0);
      var from = (axis.getPositionLabel(axis.toAxisPosition(range.start)));
      var to = (axis.getPositionLabel(axis.toAxisPosition(range.end)));
      alert("Selected from " + from + " to " + to);
    );

to 和 from 变量只获取日期而不是完整日期。 ps: xaxis 是一个日期时间。

【问题讨论】:

【参考方案1】:

您可以使用轴的positionToDate 方法从绘制范围的位置获取确切的 Date 对象值:

this.chart.cursor.behavior = "selectX";
this.chart.cursor.events.on("selectended", function(ev) 
  var range = ev.target.xRange;
  var axis = ev.target.chart.xAxes.getIndex(0);
  var from = (axis.positionToDate(axis.toAxisPosition(range.start)));
  var to = (axis.positionToDate(axis.toAxisPosition(range.end)));
  alert("Selected from " + from + " to " + to);
);

【讨论】:

以上是关于当我在 amcharts 中选择一个部分时,如何获得准确的范围值?的主要内容,如果未能解决你的问题,请参考以下文章

在 amCharts Angular 的 createChild 中找不到 html 容器

iOS 上的 AmCharts:导出时无法正确显示范围(Ionic App,AmCharts 4)

Amcharts没有显示在平板电脑/ iPad中?

数据未在 amcharts 中正确显示

如何使用 amchart 添加多条曲线取决于您的独特数据

当我在另一个单元格中选择一个值时如何更改单元格的值