【问题标题】:How to get data event click in angular google chart-angular 2+如何在 angular google chart-angular 2+ 中获取数据事件点击
【发布时间】:2020-04-14 14:25:41
【问题描述】:

我在我的 Angular 项目仪表板中使用了谷歌图表。

通过阅读文档:https://github.com/FERNman/angular-google-charts,我使用以下代码获取事件(其中应包含我选择的图表元素)

根据文档,当图表中的元素被选中时会发出 select 事件。

<google-chart (select)="onSelect($event)"></google-chart>

我在我的代码中使用了相同的。

HTML:`

      <google-chart #chart [title]="Bartitle" [type]="Bartype" [data]="Bardata" [columnNames]="BarcolumnNames"
        [options]="Baroptions" [width]="Barwidth" [height]="Barheight" 
        (select)="onSelect($event)">
      </google-chart>`

组件.Ts

this.Bartitle = 'Current and Target';
this.Bartype = 'BarChart';
this.Bardata = [
  ["2012", 900, 390],
  ["2013", 1000, 400],
  ["2014", 1170, 440],
  ["2015", 1250, 480],
  ["2016", 1530, 540]
];
this.BarcolumnNames = ["Year", "Current", "Target"];
this.Baroptions = {
  hAxis: {
    title: 'Maturity'
  },
  vAxis: {
    title: 'Month'
  },
};
this.Barwidth = 200;
this.Barheight = 200;

onSelect(event) {
   console.log(event);
}

但我没有得到我选择的值..

我需要成熟度和年份的值...我如何得到它?我做了什么改变吗??

【问题讨论】:

  • 谁能给我一个想法??
  • 谁能帮帮我??

标签: angular6 angular5 angular7 react-google-charts


【解决方案1】:

选择 当图表中的元素被选中时,会触发 select 事件。

<google-chart (select)="onSelect($event)"></google-chart>

包含选定值数组的 ChartSelectionChangedEvent 类型的事件。

在组件中

编辑:基于 cmets

     onSelect(event) {
           const { row, column } = event[0];
           const year = this.Bardata[row][0];
           let selectedItem;
           if (column === 1) {
                selectedItem = "current";
           }
           if (column === 2) {
                selectedItem = "target";
           }
           console.log("year", year, "SelectedItem" ,selectedItem, this.Bardata[row][column]);
     }

更多信息请阅读文档: https://github.com/FERNman/angular-google-charts

【讨论】:

  • 谢谢@sayooj...再次遇到一些问题..我编辑并再次发布了问题..你能帮我吗??
  • 再次浏览文档。但是没有找到任何有用的 api 来满足您的要求。暂时您可以使用这个简单的 hack。它正在工作。onSelect(event) { const { row, column } = event[0]; const year = this.Bardata[row][0] console.log("year", year, this.Bardata[row][column]); }
  • 如果你看到我的图表截图,我使用的是当前和目标等两个数据。红条显示“当前”,蓝条显示“目标”。我需要那个数据是当前的或目标的......有什么办法吗??
  • 是的,我们可以。如果 column = 1 它是当前值,如果 column = 2 它是目标值。
猜你喜欢
  • 1970-01-01
  • 2017-10-28
  • 2018-10-13
  • 1970-01-01
  • 1970-01-01
  • 2018-10-22
  • 2016-10-04
  • 2017-04-05
相关资源
最近更新 更多