Angular使用ngx-echarts加载Echarts

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/idomyway/article/details/82390304

前言

    之前写过通过自定义指令实现在angular加载echarts,今天在npm上发现了ngx-echarts,可以方便的加载echarts3,其实现也是通过自定义指令实现的。

安装配置ngx-echarts

    首先安装适合自己项目版本的ngx-echart
这里写图片描述
    安装ngx-echarts
    如果当前的项目版本为angular6

# if you use npm 
npm install echarts --save
npm install ngx-echarts --save

    如果当前项目版本<angular6

# if you use npm 
npm install echarts --save
npm install ngx-echarts@2.1.0 --save

    添加js引导文件

{
  "scripts": [
    // ...

    // add this:
    "../node_modules/echarts/dist/echarts.min.js"  // or echarts.js for debug purpose
  ],
}

使用

    首先:在APPModule中或者组件的ngModule导入的NgxEchartsModule

import { NgxEchartsModule } from 'ngx-echarts';

@NgModule({
  imports: [
    ...,
    NgxEchartsModule
  ],
  ...
})
export class AppModule { }

    我们在appcomponent中:
        1.声明div容器

<div echarts [options]="chartOption" class="demo-chart"></div>

        2.添加样式

.demo-chart {
    width: 600px;
  height: 400px;
}

        3.在ts中声明chartOption

chartOption = {
  title: {
    text: '堆叠区域图'
  },
  tooltip : {
    trigger: 'axis'
  },
  legend: {
    data:['邮件营销','联盟广告','视频广告','直接访问','搜索引擎']
  },
  toolbox: {
    feature: {
      saveAsImage: {}
    }
  },
  grid: {
    left: '3%',
    right: '4%',
    bottom: '3%',
    containLabel: true
  },
  xAxis : [
    {
      type : 'category',
      boundaryGap : false,
      data : ['周一','周二','周三','周四','周五','周六','周日']
    }
  ],
  yAxis : [
    {
      type : 'value'
    }
  ],
  series : [
    {
      name:'邮件营销',
      type:'line',
      stack: '总量',
      areaStyle: {normal: {}},
      data:[120, 132, 101, 134, 90, 230, 210]
    },
    {
      name:'联盟广告',
      type:'line',
      stack: '总量',
      areaStyle: {normal: {}},
      data:[220, 182, 191, 234, 290, 330, 310]
    },
    {
      name:'视频广告',
      type:'line',
      stack: '总量',
      areaStyle: {normal: {}},
      data:[150, 232, 201, 154, 190, 330, 410]
    },
    {
      name:'直接访问',
      type:'line',
      stack: '总量',
      areaStyle: {normal: {}},
      data:[320, 332, 301, 334, 390, 330, 320]
    },
    {
      name:'搜索引擎',
      type:'line',
      stack: '总量',
      label: {
        normal: {
          show: true,
          position: 'top'
        }
      },
      areaStyle: {normal: {}},
      data:[820, 932, 901, 934, 1290, 1330, 1320]
    }
  ]
}

        具体的使用方法参考:ngx-echarts - npm https://www.npmjs.com/package/ngx-echarts

猜你喜欢

转载自blog.csdn.net/idomyway/article/details/82390304