LayUI+Echart實現圖表


1.首先 定義一個容器存放圖表  需要指定這個容器的大小

1 <div class="layui-card">
2     <div class="layui-card-header">柱形圖</div>
3     <div class="layui-card-body">
4         <div id="EchartZhu" style="width: 500px;height: 500px;"> </div>              
5     </div>
6 </div>

2.引入layui包 這個大家都懂得吧

3.Echart 作為layui的內部組件使用 需要配置 配置后才可以使用

layui.config({
                version: 1,
                base: '..' //這個就是你放Echart.js的目錄
}).use(['element', 'echarts'], function() {});

4.Echart.js 也需要配置 這個網上有很多例子 大家可以去看一下 這里簡單的列一下

(function (global, factory) {
    typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports) :
    typeof define === 'function' && define.amd ? define(['exports'], factory) :
    window.layui && layui.define ? layui.define(function(exports){exports('echarts',factory(exports))}) :
    (factory((global.echarts = {})));
}

5.顯示圖表 首先是layui內置模塊

var element = layui.element,
$ = layui.jquery,
echarts = layui.echarts;

然后基於准備好dom元素 創建Echart實例

var chartZhu = echarts.init(document.getElementById('EchartZhu'));

指定圖表配置項和數據

  1 //指定圖表配置項和數據
  2                 var optionchart = {
  3                     title: {
  4                         text: '商品訂單'
  5                     },
  6                     tooltip: {},
  7                     legend: {
  8                         data: ['銷量']
  9                     },
 10                     xAxis: {
 11                         data: ['周一', '周二', '周三', '周四', '周五', '周六', '周天']
 12                     },
 13                     yAxis: {
 14                         type: 'value'
 15                     },
 16                     series: [{
 17                         name: '銷量',
 18                         type: 'bar', //柱狀
 19                         data: [100,200,300,400,500,600,700],
 20                         itemStyle: {
 21                             normal: { //柱子顏色
 22                                 color: 'red'
 23                             }
 24                         },
 25                     },{
 26                         name:'產量',
 27                         type:'bar',
 28                         data:[120,210,340,430,550,680,720],
 29                         itemStyle:{
 30                             normal:{
 31                                 color:'blue'
 32                             }
 33                         }
 34                     }]
 35                 };
 36 
 37                 var optionchartZhe = {
 38                     title: {
 39                         text: '商品訂單'
 40                     },
 41                     tooltip: {},
 42                     legend: { //頂部顯示 與series中的數據類型的name一致
 43                         data: ['銷量', '產量', '營業額', '單價']
 44                     },
 45                     xAxis: {
 46                         // type: 'category',
 47                         // boundaryGap: false, //從起點開始
 48                         data: ['周一', '周二', '周三', '周四', '周五', '周六', '周日']
 49                     },
 50                     yAxis: {
 51                         type: 'value'
 52                     },
 53                     series: [{
 54                         name: '銷量',
 55                         type: 'line', //線性
 56                         data: [145, 230, 701, 734, 1090, 1130, 1120],
 57                     }, {
 58                         name: '產量',
 59                         type: 'line', //線性
 60                         data: [720, 832, 801, 834, 1190, 1230, 1220],
 61                     }, {
 62                         smooth: true, //曲線 默認折線
 63                         name: '營業額',
 64                         type: 'line', //線性
 65                         data: [820, 932, 901, 934, 1290, 1330, 1320],
 66                     }, {
 67                         smooth: true, //曲線
 68                         name: '單價',
 69                         type: 'line', //線性
 70                         data: [220, 332, 401, 534, 690, 730, 820],
 71                     }]
 72                 };
 73 
 74                 var optionchartBing = {
 75                     title: {
 76                         text: '商品訂單',
 77                         subtext: '純屬虛構', //副標題
 78                         x: 'center' //標題居中
 79                     },
 80                     tooltip: {
 81                         // trigger: 'item' //懸浮顯示對比
 82                     },
 83                     legend: {
 84                         orient: 'vertical', //類型垂直,默認水平
 85                         left: 'left', //類型區分在左 默認居中
 86                         data: ['單價', '總價', '銷量', '產量']
 87                     },
 88                     series: [{
 89                         type: 'pie', //餅狀
 90                         radius: '60%', //圓的大小
 91                         center: ['50%', '50%'], //居中
 92                         data: [{
 93                                 value: 335,
 94                                 name: '單價'
 95                             },
 96                             {
 97                                 value: 310,
 98                                 name: '總價'
 99                             },
100                             {
101                                 value: 234,
102                                 name: '銷量'
103                             },
104                             {
105                                 value: 135,
106                                 name: '產量'
107                             }
108                         ]
109                     }]
110                 };

在准備好的容器中顯示出來

chartZhu.setOption(optionchart, true);

6.效果如下:

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM