Angular2.0/4.0 使用Echarts

前言:在开发中现在需要使用echarts来制作图标,所以就在网络上各种找资料,最后发现ngx-echarts轮子可用。那么就走一波.

方式: 使用echarts和ngx-eachrts两个依赖,借助于ngx..,是因为echarts是基于js编写,没有ts文件。所以就使用ngx-echarts来使用即可。

  • 第一步:安装依赖

npm install echarts --save
npm install ngx-echarts --save

  • 第二步:在Module中引入
import { NgxEchartsModule } from 'ngx-echarts';

@NgModule({
  imports: [
    ...,
// 引入module
    NgxEchartsModule
  ],
})
export class AppModule { }
  • 第三步:在angular-cli中添加js引入
// edit .angular-cli.json
{
  "scripts": [
    // add this: 注意,在echarts中可能没有提供echarts.min.js但是肯定有echarts.js的。对应引入即可。
    "../node_modules/echarts/dist/echarts.min.js"
// 还可以添加中英文,主题。。。。
  ],
}
  • 第四步:页面中使用
  • 各种文件
    . html

. ts

options: any;

  constructor() { }

  ngOnInit() {
    let xAxisData = [];
    let data1 = [];
    let data2 = [];

    for (let i = 0; i < 100; i++) {
      xAxisData.push('category' + i);
      data1.push((Math.sin(i / 5) * (i / 5 - 10) + i / 6) * 5);
      data2.push((Math.cos(i / 5) * (i / 5 - 10) + i / 6) * 5);
    }

    this.options = {
      legend: {
        data: ['bar', 'bar2'],
        align: 'left'
      },
      tooltip: {},
      xAxis: {
        data: xAxisData,
        silent: false,
        splitLine: {
          show: false
        }
      },
      yAxis: {
      },
      series: [{
        name: 'bar',
        type: 'bar',
        data: data1,
        animationDelay: function (idx) {
          return idx * 10;
        }
      }, {
        name: 'bar2',
        type: 'bar',
        data: data2,
        animationDelay: function (idx) {
          return idx * 10 + 100;
        }
      }],
      animationEasing: 'elasticOut',
      animationDelayUpdate: function (idx) {
        return idx * 5;
      }
    };
  }

. AppModule 就不在叙述了

最终的结果:


运行实例.png

最后

当然是附上ngx-echarts的官网咯,以上的例子其实就是官网例子而已。

在网络上看到有的也是使用该组件,但是是较老的版本了,所以就自己写一个正在使用的。
当然,需要事件,其他的就在官网查看即可。因为我也才正在使用,具体的问题都是需要具体的分析才行。所以其余的就不在赘述。

使用中遇到的问题?

  1. 我使用ng2-admin的后台框架,在该框架中NgxEchartsModule,不能再AppModule.ts中引入。具体原因不详,猜测是由于ng2-admin导致的。

OK,到这里就结束了,欢迎留言交流。 有时间我都会回复的,谢谢。

你可能感兴趣的:(Angular2.0/4.0 使用Echarts)