echarts的使用
1
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | < template > < div > < el-card class="box-card"> < div slot="header" class="clearfix"> < el-button style="float: right; padding: 3px 0" type="text">eachars图</ el-button > </ div > <!-- 内容 --> < div class="text item"> <!-- 为 ECharts 准备一个具备大小(宽高)的 DOM --> < div id="main" style="width: 100%;height:600px;"></ div > </ div > </ el-card > </ div > </ template > |
2本图形的地址 https://gallery.echartsjs.com/editor.html?c=xSJJXiE1Wx
https://www.cnblogs.com/1996zy/p/8963385.html 配置说明 遇见的问题1 报错option是未定义的 解决:添加一个var
<script> var echarts = require("echarts"); export default { data() { return {}; }, mounted() { var myChart = echarts.init(document.getElementById("main")); //// 基于准备好的dom,初始化echarts实例 var xData = (function() { var data = []; for (var i = 1; i < 13; i++) { data.push(i + "月份"); } return data; })(); //自调用函数 var option = { backgroundColor: "green", //背景色 title: { text: "本年商场顾客男女人数统计", //标题 subtext: "BY Wang Dingding", //理解成副标题 padding: [12, 4], //距离上下4px x: "4%", //标题和副标题距离左边的距离 textStyle: { color: "red", //主标题的颜色 fontSize: "22" //主标题的大小 }, subtextStyle: { color: "#90979c", //副标题 fontSize: "16" } }, //提示框 与series 有关 hover显示效 tooltip: { trigger: "axis", // 触发类型,默认数据触发,见下图,可选为:'item' 只会显示一部分 ¦ 'axis'显示整个 hover显示效果不同 axisPointer: { // 坐标轴指示器,坐标轴触发有效 type: "shadow", // 默认为直线,可选为:'line' | 'shadow' textStyle: { color: "#fff" } } }, //网格 grid: { borderWidth: 0, //此配置项生效的前提是,设置了 show: true top: 110, bottom: 95, //grid 组件离容器下侧的距离。 textStyle: { color: "#fff" } }, //图例组件 legend: { x: "4%", top: "11%", textStyle: { color: "#90979c" }, data: ["女", "男", "平均"] }, calculable: true, //直角坐标系 grid 中的 x 轴 xAxis: [ { type: "category", // 'value' | log' | 'time' | 'category' 类目轴,适用于离散的类目数据,为该类型时必须通过 data 设置类目数据。 axisLine: { lineStyle: { color: "90979c" //X轴线的颜色 } }, splitLine: { //是否显示分隔线。默认数值轴显示,类目轴不显示。 show: false }, axisTick: { //是否显示坐标轴刻度。 show: false }, splitArea: { //坐标轴分隔区域的显示间隔,在类目轴中有效。默认同 axisLabel.interval 一样。 show: false }, axisLabel: { ////是否显示刻度标签。 interval: 0 }, data: xData //X轴的数据 } ], //直角坐标系 grid 中的 Y 轴 yAxis: [ { type: "value", splitLine: { ////是否显示分隔线。默认数值轴显示,类目轴不显示。 show: false // 就是这种 | | | | }, axisLine: { //y轴的线 lineStyle: { color: "#90979c" } }, axisTick: { ////是否显示坐标轴刻度。 show: false }, axisLabel: { interval: 0 }, splitArea: { ////坐标轴分隔区域的显示间隔, show: false } } ], //内置型数据区域缩放组件 dataZoom: [ { show: true, //是否显示 组件。如果设置为 false,不会显示 但是缩放功能还在 height: 30, xAxisIndex: [0], bottom: 30, start: 10, //数据窗口范围的起始百分比 end: 80, //数据窗口范围的结束百分比 handleIcon: //手柄的 icon 形状,支持路径字符串 "path://M306.1,413c0,2.2-1.8,4-4,4h-59.8c-2.2,0-4-1.8-4-4V200.8c0-2.2,1.8-4,4-4h59.8c2.2,0,4,1.8,4,4V413z", handleSize: "110%", //控制手柄的尺寸,可以是像素大小,也可以是相对于 dataZoom 组件宽度的百分比, handleStyle: { color: "#d3dee5" }, textStyle: { color: "#fff" }, borderColor: "#90979c" }, { type: "inside", show: true, height: 15, start: 1, end: 35 } ], series: [ //系列列表。每个系列通过 type 决定自己的图表类型 { name: "女", //系列名称,用于tooltip的显示, type: "bar", //类型 stack: "总量", //数据堆叠,同个类目轴上系列配置相同的stack值后,后一个系列的值会在前一个系列的值上相加 barMaxWidth: 35, //柱条的最大宽度,不设时自适应。支持设置成相对于类目宽度的百分比。 barGap: "10%", //不同系列的柱间距离,为百分比(如 '30%',表示柱子宽度的 30%)。 itemStyle: { normal: { color: "rgba(255,144,128,1)", label: { show: true, textStyle: { color: "#fff" }, position: "insideTop", formatter: function(p) { return p.value > 0 ? p.value : ""; } } } }, data: [ 709, 1917, 2455, 2610, 1719, 1433, 1544, 3285, 5208, 3372, 2484, 4078 ] }, { name: "男", type: "bar", stack: "总量", itemStyle: { normal: { color: "rgba(0,191,183,1)", barBorderRadius: 0, label: { show: true, position: "top", formatter: function(p) { return p.value > 0 ? p.value : ""; } } } }, data: [327, 1776, 507, 1200, 800, 482, 204, 1390, 1001, 951, 381, 220] }, { name: "总数", type: "line", stack: "总量", symbolSize: 10, symbol: "circle", itemStyle: { normal: { color: "rgba(252,230,48,1)", barBorderRadius: 0, label: { show: true, position: "top", formatter: function(p) { return p.value > 0 ? p.value : ""; } } } }, data: [ 1036, 3693, 2962, 3810, 2519, 1915, 1748, 4675, 6209, 4323, 2865, 4298 ] } ] }; // 使用刚指定的配置项和数据显示图表。 myChart.setOption(option); } }; </script>
遇见问题,这是你成长的机会,如果你能够解决,这就是收获。
作者:晚来南风晚相识
出处:https://www.cnblogs.com/IwishIcould/
本文版权归作者所有,欢迎转载,未经作者同意须保留此段声明,在文章页面明显位置给出原文连接
如果文中有什么错误,欢迎指出。以免更多的人被误导。
出处:https://www.cnblogs.com/IwishIcould/
想问问题,打赏了卑微的博主,求求你备注一下的扣扣或者微信;这样我好联系你;(っ•̀ω•́)っ✎⁾⁾!
如果觉得这篇文章对你有小小的帮助的话,记得在右下角点个“推荐”哦,或者关注博主,在此感谢!
万水千山总是情,打赏5毛买辣条行不行,所以如果你心情还比较高兴,也是可以扫码打赏博主(っ•̀ω•́)っ✎⁾⁾!
想问问题,打赏了卑微的博主,求求你备注一下的扣扣或者微信;这样我好联系你;(っ•̀ω•́)っ✎⁾⁾!

支付宝

微信
如果文中有什么错误,欢迎指出。以免更多的人被误导。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY