当前位置: 首页 > 知识库问答 >
问题:

Ng2图表仅显示前两个值的折线图

翁翰墨
2023-03-14

我正在启动新的Angular应用程序,我用Angulal-CLI(beta 22.1)初始化了它。但是当我在图表中添加测试数据(5个值)时,它似乎缩放错误,只显示了前两个值,并在图表的整个长度上拉伸它们(见图)。

该项目是空白的,不包含任何CSS。

我的app.component.html

<div>
    <canvas baseChart [datasets]="_numbers" [labels]="_labels" [options]="_chartOpt" [colors]="_chartColours" [legend]="_chartLegend" [chartType]="_chartType" width="600px">
    </canvas>
<div>

app.component.ts

import { Component } from '@angular/core';
import { BaseChartDirective } from "ng2-charts/ng2-charts";

@Component({
  selector: 'app-root',
  templateUrl: './app.component.html',
  styleUrls: ['./app.component.css']
})
export class AppComponent {
  private _numbers: any[] = [
      {
        label: "Test",
        data: [10,2,6,7] // should cause 4 points in the chart
     }
  ];

  private _chartOpt: any = {
        responsive: true
  };

  public _chartColours:any[] = [];

  private _labels: string[] = [];
  private _chartLegend: boolean = false;
  private _chartType: string = "line";
}

chart.js库是通过angular cli.json添加的:

"scripts": [
         "../node_modules/chart.js/dist/Chart.bundle.min.js"
      ],

我真的不知道我错在哪里。我尝试了许多不同的选项(responsive:true/falseMaintaintAspectratio:true/false,包装

如果你需要更多的代码,请告诉我。


共有2个答案

俞新翰
2023-03-14

您需要在画布中放置一个条件,例如,在加载数据或您的array.length时显示它

例子:

<canvas baseChart *ngIf="showMyChart" [datasets]="_numbers"
     [chartType]="_chartType" width="600px">
</canvas>

柯伟志
2023-03-14

标签属性必须与值一起定义。根据物业文件:

标签(?数组)-x轴标签。这是必要的图表:线,酒吧和雷达。

因此,为标签指定实际值就可以了。

 类似资料:
  • 我正在使用chart.js在一个页面上显示多个折线图。然而,只有最后一张图表显示,尽管我称之为“canvas1”和“canvas2”。有些地方一定有冲突,我试过很多东西,但没有任何乐趣。以下是两个图表,仅显示最后一个: 图一 图二: 你的帮助将不胜感激,已经打扰我一段时间了! 提前谢谢

  • 我正在尝试用MPAndroidChart构建一个LineChart,来表示我从分贝仪得到的值。问题是,我只得到一个表示当前值的移动点,但我希望有一条线,在移动时,显示值。脑电图之类的东西要清楚。 这是onCreate()方法中与图表相关的所有代码: 以下是我用来更新图表中数据的方法: 因为我需要动态更新数据,所以从线程调用updateChart(float x,float y)。这是我运行应用程序

  • 我尝试了和(切换到和从透明的),但没有成功。我也看不到任何内置的方法来做我想要的事情。 我只想在CollapsingToolbarLayout完全折叠时显示标题,否则,我需要隐藏它。

  • 我已经使用禁用了LineChart中的所有值。现在我希望折线图中的特定值被启用时,用户触及到这一点。我使用尝试了它,但对我不起作用。

  • 在得到它后,作为一个建议在评论,但仍然没有可行的代码。

  • 我正在使用组合图和图表。js在我的网站上。 PFB我用的代码。 var PCTCtx=document.getElementById("pctdiv"). getContext("2d"); 我需要在条形图上显示的线。 我在这里为相同的内容创建了一个jsfiddle 任何帮助都是可观的。