Angular2.0/4.0 使用Echarts图表的示例代码

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

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

第一步:安装依赖

rush:bash;"> npm install echarts --save npm install ngx-echarts --save

第二步:在Module中引入

rush:js;"> import { NgxEchartsModule } from 'ngx-echarts'; @NgModule({ imports: [ ...,// 引入module NgxEchartsModule ],}) export class AppModule { }

第三步:在angular-cli中添加js引入

rush:js;"> // edit .angular-cli.json { "scripts": [ // add this: 注意,在echarts中可能没有提供echarts.min.js但是肯定有echarts.js的。对应引入即可。 "../node_modules/echarts/dist/echarts.min.js" // 还可以添加中英文,主题。。。。 ],}

第四步:页面中使用

rush:xhtml;">

各种文件

. html

rush:xhtml;">

. ts

rush:js;"> 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',data: data2,animationDelay: function (idx) { return idx * 10 + 100; } }],animationEasing: 'elasticOut',animationDelayUpdate: function (idx) { return idx * 5; } }; }

. AppModule 就不在叙述了

最终的结果:

最后

当然是附上nofollow" target="_blank" href="https://xieziyu.github.io/ngx-echarts/#/home">ngx-echarts的官网咯,以上的例子其实就是官网例子而已。

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

使用中遇到的问题?

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

OK,到这里就结束了,以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持编程之家。

相关文章

前言 做过web项目开发的人对layer弹层组件肯定不陌生,作为l...
前言 前端表单校验是过滤无效数据、假数据、有毒数据的第一步...
前言 图片上传是web项目常见的需求,我基于之前的博客的代码...
前言 导出Excel文件这个功能,通常都是在后端实现返回前端一...
前言 众所周知,js是单线程的,从上往下,从左往右依次执行,...
前言 项目开发中,我们可能会碰到这样的需求:select标签,禁...