Highcharts - 动态图表创建和独特数据系列

时间:2016-07-15 08:54:37

标签: angularjs charts highcharts typescript

我需要能够在同一页面上使用一个"创建"按钮。我的逻辑如下:点击创建按钮后,我的其余api会为该特定图表发回数据。当我有数据时,我将它绑定到我的控制器上的系列变量。现在我有一个"全球"我的控制器上的系列变量,每当数据从REST返回时我都会更新它,所以我的所有图表都具有相同的值并且看起来相同(作为概念验证,看看绘图图表是否会起作用)。我如何制作它,以便每个图表都有自己的数据系列?每次创建图表时是否需要设置图表ID,然后找到该ID并为其创建系列?这是我的代码

    <md-button class="md-raised md-primary"
         ng-click="chartGridCtrl.addChart()">Create
    </md-button>
    <div layout="column" flex>
        <md-divider/>
        <div flex ng-cloak>
            <md-grid-list
                    md-cols="1" md-cols-sm="2" md-cols-md="3" md-cols-gt-md="6"
                    md-row-height-gt-md="1:1" md-row-height="4:3"
                    md-gutter="8px" md-gutter-gt-sm="4px">
                <md-grid-tile ng-repeat="tile in chartGridCtrl.tiles"
                              md-rowspan="{{tile.span.row}}"
                              md-colspan="{{tile.span.col}}"
                              style="background-color: #00ad9c">
                    <md-card>Chart card
                        <div class="col-md-6">
                            <div>
                                <snapshot-bar-chart // this is my custom directive for chart
                                        data="[chartGridCtrl.series]">
                                </snapshot-bar-chart>
                            </div>
                        </div>
                    </md-card>
                </md-grid-tile>
            </md-grid-list>
        </div>
    </div>

控制器(我省略了构造函数等):

export class ChartGridController {

    private series = [];
    private tiles:Object[];

    public addChart = () => {

       this.tiles.push(
       {
            title: "anotherTile",
            span: {row: 2, col: 2}
       });

    // get REST data and update series variable 
   };

}

0 个答案:

没有答案