正确将多个CSV文件添加到图形

时间:2019-09-12 12:10:27

标签: angular csv highcharts observable

直到现在,我有一个输入,我可以在其中选择一个文件,单击一个按钮,然后它将读取并解析该文件并将其值设置到图形中。使用的代码如下所示:

  readDocument(fileChangeEvent: Event) {
    return new Observable<string>(obs=>{
      const file = (fileChangeEvent.target as HTMLInputElement).files[0];
      let fileReader = new FileReader();

      fileReader.onload = (e) => {
        obs.next(fileReader.result as string);
      }
      fileReader.readAsText(file);  
  })
}


  update_chart(data) {
    const self = this,
      chart = this.chart;
    chart.showLoading();
    setTimeout(() => {
      chart.hideLoading();

      this.readDocument(data).subscribe(documentvalue=>{
        self.chartOptions.data.csv = documentvalue;
      })

我的csv数据如下:

enter image description here

我想做的是,插入的数据不会替换现有的图形,应该将其添加到其中。 为此,我尝试将self.chartOptions.data.csv函数中的update_chart替换为chart.addSeries选项,如下所示:

  this.readDocument(data).subscribe(documentvalue=>{
    console.log( documentvalue);
    //self.chartOptions.data.csv = documentvalue;
    chart.addSeries({
      data: documentvalue
    })

  })

当我尝试此操作时,图表看上去一团糟。图表中没有显示任何数据,只是以下系列发生了变化。我想这可能是因为我的csv包含两个系列而不仅仅是一个,所以addSeries无法正常工作。也许这也是我没有看到的另一个错误。

但是,我真的坚持如何解决这个问题。有人有任何想法吗?

0 个答案:

没有答案