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.效果如下: