zoukankan      html  css  js  c++  java
  • echarts&&ngx-echarts使用

    1、官方网站

    https://www.echartsjs.com/zh/index.html


    2、angular中单引入echarts

    (1)命令:npm i echarts

    (2)在angular.json的scripts中引入echarts.js:"./node_modules/echarts/dist/echarts.js"

    (3)html中:

    <div style=" 700px;height: 400px;" nz-col #myechart>
       
    </div>

     (4)ts中:

    import { Component, ViewChild, ElementRef, OnInit } from '@angular/core';
    declare var echarts: any;

    @Component({
      selector: 'app-root',
      templateUrl: './app.component.html',
      styleUrls: ['./app.component.css']
    })
    export class AppComponent implements OnInit {
        title = 'my-app';
        @ViewChild('myechart') myechart: ElementRef;
        EC1;
        constructor(){}

        ngOnInit(){
          
        }
        
        ngAfterViewInit() {
          const option = {
            title: {
                text: '折线图堆叠'
            },
            tooltip: {
                trigger: 'axis'
            },
            legend: {
                data: ['邮件营销', '联盟广告', '视频广告', '直接访问', '搜索引擎']
            },
            grid: {
                left: '3%',
                right: '4%',
                bottom: '3%',
                containLabel: true
            },
            toolbox: {
                feature: {
                    saveAsImage: {}
                }
            },
            xAxis: {
                type: 'category',
                boundaryGap: false,
                data: ['周一', '周二', '周三', '周四', '周五', '周六', '周日']
            },
            yAxis: {
                type: 'value'
            },
            series: [
                {
                    name: '邮件营销',
                    type: 'line',
                    stack: '总量',
                    data: [120, 132, 101, 134, 90, 230, 210]
                },
                {
                    name: '联盟广告',
                    type: 'line',
                    stack: '总量',
                    data: [220, 182, 191, 234, 290, 330, 310]
                },
                {
                    name: '视频广告',
                    type: 'line',
                    stack: '总量',
                    data: [150, 232, 201, 154, 190, 330, 410]
                },
                {
                    name: '直接访问',
                    type: 'line',
                    stack: '总量',
                    data: [320, 332, 301, 334, 390, 330, 320]
                },
                {
                    name: '搜索引擎',
                    type: 'line',
                    stack: '总量',
                    data: [820, 932, 901, 934, 1290, 1330, 1320]
                }
            ]
        };
          this.EC1 = echarts.init(this.myechart.nativeElement);
          this.EC1.setOption(option, true);
      }
    }

    注:div需设置宽高;

      echarts图放在ngAfterViewInit中


    3、angular中使用ngx-echarts

    (1) 命令:npm install echarts --save

            npm install ngx-echarts --save

    (2)在angular.json的scripts中引入echarts.js:"./node_modules/echarts/dist/echarts.js"

    (3)在跟模块中导入NgxEchartsModule

    import {NgxEchartsModule} from 'ngx-echarts';

    imports: [
        NgxEchartsModule
      ],

    (4)在组件中使用echarts

      html中:

    <div echarts [options]="chartOption" style=" 100%; height: 560px;"></div>

      ts中:

    import { Component, OnInit } from '@angular/core';

    @Component({
      selector: 'app-root',
      templateUrl: './app.component.html',
      styleUrls: ['./app.component.css']
    })
    export class AppComponent implements OnInit {
        // 定义图表项
        chartOption: any;
        constructor(){}
        ngOnInit(){
            this.chartOption = {
                title: {
                    text: '折线图堆叠'
                },
                tooltip: {
                    trigger: 'axis'
                },
                legend: {
                    data: ['邮件营销', '联盟广告', '视频广告', '直接访问', '搜索引擎']
                },
                grid: {
                    left: '3%',
                    right: '4%',
                    bottom: '3%',
                    containLabel: true
                },
                toolbox: {
                    feature: {
                        saveAsImage: {}
                    }
                },
                xAxis: {
                    type: 'category',
                    boundaryGap: false,
                    data: ['周一', '周二', '周三', '周四', '周五', '周六', '周日']
                },
                yAxis: {
                    type: 'value'
                },
                series: [
                    {
                        name: '邮件营销',
                        type: 'line',
                        stack: '总量',
                        data: [120, 132, 101, 134, 90, 230, 210]
                    },
                    {
                        name: '联盟广告',
                        type: 'line',
                        stack: '总量',
                        data: [220, 182, 191, 234, 290, 330, 310]
                    },
                    {
                        name: '视频广告',
                        type: 'line',
                        stack: '总量',
                        data: [150, 232, 201, 154, 190, 330, 410]
                    },
                    {
                        name: '直接访问',
                        type: 'line',
                        stack: '总量',
                        data: [320, 332, 301, 334, 390, 330, 320]
                    },
                    {
                        name: '搜索引擎',
                        type: 'line',
                        stack: '总量',
                        data: [820, 932, 901, 934, 1290, 1330, 1320]
                    }
                ]
            };  
          
        }
        
    }

     参考:https://www.cnblogs.com/zero-zm/p/10014633.html

  • 相关阅读:
    让x86的android模拟器能模拟arm架构系统
    婴儿补充微量元素
    asterisk 能打电话的配置
    SIP协议错误代码大全
    asterisk错误排查
    asterisk帮助与国内论坛
    win10 只要打开文件对话框就卡死解决方法
    分享到朋友圈实现
    跳转前暂停几秒js如何实现
    Github css加载失败,样式混乱解决办法
  • 原文地址:https://www.cnblogs.com/boreguo/p/12292017.html
Copyright © 2011-2022 走看看