vue使用 v-charts 常用方法总结

news/2024/10/30 13:36:29/

vue使用 v-charts 常用方法总结

        • 折线图:
        • 柱形图:
        • 水球图:
        • 环形图:
        • 散点图:
        • 日常开发图表中,v-chatrs中的方法,有很多基本都是通用

v-charts传送门入口

e-charts传送门入口

折线图:

html代码如下:
<template><div><ve-line height="139px" width="370px" :extend="chartExtend" :data="chartData" :settings="chartSettings" :legend-visible="false" :visual-map="visualMap" :grid="grid" :data-zoom="dataZoom"> :title="{ text: '东南风 10m/s', left: 'center', textStyle: { color: '#ffffff', fontSize: 12, fontWeight: 100 } }" :toolbox="toolbox"></ve-line></div>
</template>
js代码如下:
// 引入渐变模块
// import 'echarts/lib/component/visualMap'
// 设置区域缩放
// import 'echarts/lib/component/dataZoom'
// 设置Y轴每条线序不同颜色
// import echarts from 'echarts/lib/echarts';
// 设置title标题,在引用图标地方调用 :title
// import "echarts/lib/component/title";
// 下载按钮
//	import 'echarts/lib/component/toolbox';
export default{data(){// 配置项this.chartSettings = {},this.dataZoom = [{type: 'slider',start: 0,end: 10,backgroundColor: 'rgba(0, 0, 0, 0)', // 区域滚条背景颜色fillerColor: 'rgba(0, 0, 0, 0.05)' // 区域滚条蒙层颜色}]// 配置图标按钮this.toolbox = {right: 50,feature: {saveAsImage: {}}}// 图表渐变(需要引入模块才能操作)this.visualMap = [{show: false, // 是否显示对应渐变信息type: 'piecewise', // splitNumber: 5,min: 0,max: 60,right: 0,top: '50%'}],// 图表剪切方法this.grid = {right: 100}// 设置区域缩放(需要引入模块才能操作)this.dataZoom = [{type: 'slider',start: 0,end: 10}]return {// 图表数据接收chartData: {columns: [], // 索引rows: [] // 数据},// 图表属性chartExtend: {// 设置显示图渐变颜色 需要引入import echarts from 'echarts/lib/echarts'color: [ new echarts.graphic.LinearGradient(0, 0, 0, 1, [{ offset: 0, color: '#087A97'}, {offset: 1, color: '#011D46'}]) ],// 设置Y轴每条线序不同颜色 需要引入import echarts from 'echarts/lib/echarts''yAxis.0.splitArea': {show: true,areaStyle: {color: [// 现在设置的是第一个为渐变,之后的都是指定颜色new echarts.graphic.LinearGradient(0, 0, 0, 1, [{ offset: 0, color: '#8ec6ad'}, {offset: 1, color: '#ffe'}]),'#F39AFF','#FBBBFF','#F1FF9D','#94FFAB']}},backgroundColor: 'transparent', // 图表背景颜色"yAxis.0.minInterval": 1, // Y轴01'yAxis.0.inverse': true, // Y轴翻转'series.1.yAxisIndex': 1, // 设定Y轴需要翻转的索引'yAxis.1.splitLine.show': false, // 去掉Y轴线color: ['red'], // 线轴颜色// 设置Y轴类目名"yAxis.0.type": "category","yAxis.0.data": [],"yAxis.1.type": "category","yAxis.1.data": ["预警", "告警"],// 设置折线图的折线series: {// 是否显示折线提示点showSymbol: true,// 折线颜色color: "#009EFF",// 折线提示点显示点实心symbol: "circle",// 折线是否圆滑smooth: false,// 线形变正方形step: "start",// 折线提示点大小symbolSize: 7,itemStyle: {normal: {// 折线隐藏方式lineStyle: {width: 0}}},// 告警线markLine: {// 是否显示起始圆点symbol: "none",// 去掉右边提示标题label: {formatter: ""},// 设置线条位置data: [{name: "预警线",type: "average", // 平均线yAxis: 1, // 设定标线位置lineStyle: {color: "skyblue" // 设置线条颜色}},{name: "告警线",type: "average", // 平均线yAxis: 2, // 设定标线位置lineStyle: {color: "skyblue"}}]},},// 设置图表位置,可以为top()、bottonm()、left()、right()grid: {y: 10, // y2: 10, // x: 0, // x2: 10, // containLabel: false // 去掉视图引导索引值},// x轴设置项xAxis: {// 去掉负数出现小标下标线错位问题onZero: falseaxisTick: {inside: true // 刻度消除},boundaryGap: false, // 是否去掉两边距离// 设置轴线文本样式axisLabel: {textStyle: {color: '#fff',fontSize: 14}},// 轴线样式axisLine: {show: true,lineStyle: {width: 0, // 隐藏线条color: '#fff'}},// 图表数据渲染线样式splitLine: {lineStyle: {type: 'dashed', // 轴线变成虚线color: '#ccc'}},// 鼠标移动显示tooltip:{// 提示位置position: ["20%", 5],formatter: (res)=>{this.$console.log(res)return res;}}},yAxis: {// 基本和xAxis中的配置一样splitNumber: 2, // Y轴索引间隔position:'left', // 定位之后,轴线即可选在一边max: '500', // Y轴最大值min: '0', // Y轴最小值// 线轴是否显示axisLine: {show: true,lineStyle: {color: '#fff'}},// 控制轴线文字启用样式axisLabel: {textStyle: {color: '#fff',fontSize: 14},// x轴索引值修改formatter: (res)=>{let name = ''switch(res){case 0:name = '优'break;case 100:name = '良'break;case 200:name = '轻度'break;case 300:name = '中度'break;case 400:name = '重度'break;case 500:name = '严重'break;}return name;}}},legend: {orient: 'vertical',x: 'right',y: 'center',// 去掉标题圆圈icon: 'none', // ‘rect’为正方形, ‘circle’为圆形(circle,rect ,roundRect,triangle,diamond,pin,arrow,none)// 改掉圆圈的大小itemHeight: 5,borderColor :'yellow',// icon 样式itemStyle: {color: "#fff"},// 文字样式textStyle: {color: '#fff'}},}}}
}

柱形图:

<ve-histogram :height="height" :width="width" :data="chartData" :extend="chartExtend" :settings="chartSettings" :loading="loading" :data-empty="chartData.rows.length <= 0" :mark-line="markLine":mark-point="markPoint"></ve-histogram>
<script>// 标线引入import 'echarts/lib/component/markLine'// 标点引入import 'echarts/lib/component/markPoint'export default {data(){// 标线配置(需要引入模块才能操作)this.markLine = {symbol: 'none', // 标线起始点去除lineStyle: {normal: {type: 'dashed',	// 标线样式color: '#FF0000', // 标线颜色symbol: 'none' // 标线结尾取消箭头}},// 标线结尾去掉文本label:{formatter: ''},// 警戒线data: [{name: '平均线',type: 'average', 平均线yAxis: 50 // 设定标线位置}],}this.markPoint = {data: [{name: '最大值',type: 'max'}]}return{chartExtend: {series:{// 启动背景阴影showBackground: true,// 背景阴影颜色backgroundStyle: {color: "#172047"},// 柱子大小barWidth: '50%',// 折线图样式smooth: false,// 去掉旁边0boundaryGap: false,// 去掉Y轴下面的刻度axisTick: {inside: true},// 背景颜色backgroundColor:'red',// 设置柱形边角样式itemStyle: {barBorderRadius:[10,10,10,10]}},// 图表渲染模型是否启用提示具体数据label: {show: true,position: 'insideLeft'}},label: {normal: {show: true,position: 'insideLeft'},color: 'red',formatter: (res)=>{let data= res.namereturn data;}},}}}}
</script>

水球图:

<ve-liquidfill height="76px" :data="chartData" :settings="chartSettings"></ve-liquidfill>
<script>import VeLiquidfill from 'v-charts/lib/liquidfill.common'export default {data(){this.chartSettings = {outline: {show: true},seriesMap: [{label: {fontSize: 12,formatter (options) {const {seriesName,data: {value}} = optionsreturn `${seriesName}\n${value}`},},center: ['20%', '50%'],radius: '90%',outline: {show: false}},{label: {fontSize: 12},center: ['50%', '50%'],radius: '90%',outline: {show: false}},{label: {fontSize: 12},center: ['80%', '50%'],radius: '90%',// 去掉外环outline: {show: false}}]}return {chartData: {columns: ['city', 'percent'],rows: [{city: '上海',percent: 0.4}, {city: '广州',percent: 0.4}, {city: '成都',percent: 0.4}]}}}}
</script?

环形图:

<ve-ring :data="chartData" :height="height" :legend-visible="false" :extend="chartExtend" :settings="chartSettings" ></ve-ring>
import VeRing from "v-charts/lib/ring.common";
data() {return {// 图表原生设置chartExtend: {series: {// 线的样式labelLine: {length: 50,// 第二条线length2: 5,lineStyle: {// 线的大小width: 1}},label: {normal: {// 是否显示扇叶show: true,position: 'insideLeft',// 文字大小fontSize: 14}},// 位置center: ['50%', '55%'],// 大小radius : ['10%', '45%'],}},chartSettings: {roseType: 'radius'}};},

散点图:

<div><ve-scatter :height="height" :extend="extend" :data="chartData_speed" :axisVisible="true" :settings="settings" :data-empty="traffic" :loading="is_nowSpeed"></ve-scatter></div>
data() {
this.settings= {xAxisType: "time",labelMap: {time: this.$t("lightings.trafficFlow.time"),speed: this.$t("lightings.trafficFlow.speed")},// 散点大小symbolSize: 4,legendName: {'speed': this.$t("lightings.trafficFlow.speed")}}
}

日常开发图表中,v-chatrs中的方法,有很多基本都是通用


http://www.ppmy.cn/news/154627.html

相关文章

3.7V锂电池供电系统设计(含充电、保护、供电及电源切换电路器件选型和原理图)

锂电池供电系统 一、锂电池 锂离子电池的负极为石墨晶体&#xff0c;正极通常为二氧化锂。充电时锂离子由正极向负极运动而嵌入石墨层中。放电时&#xff0c;锂离子从石墨晶体内负极表面脱离移向正极。所以&#xff0c;在该电池充放电过程中锂总是以锂离子形态出现&#xff0c…

抽奖之手机大转盘

直接看效果点这里 HTML <!DOCTYPE html> <html> <head>

Elementui el-input 实现自定义 v-model

Vue 本身支持自定义组件实现 v-model &#xff0c;但 el-input 作为 Elementui 的自定义组件也已经实现 v-model &#xff0c;那么如果在自定义组件中使用 el-input &#xff0c;但自定义组件也想实现 v-model &#xff0c;应该怎么做&#xff1f; 错误的方式 Vue 中让自定义组…

RISC-V 麻雀 D1s Buildroot 基本笔录

文章目录 前言麻雀Buildroot开机日志系统探索OpenSBIQEMU Buildroot RISCV参考 前言 RISC-V, BSD许可证之下自由使用的CPU设计, 最早是2010年加州大学伯克利分校的几个教授设计的, 几乎可以为所欲为的许可协议, RV32主要用于MCU, RV64主要用于SOC, 还有RV128等. 现在很多国产芯…

【保姆级教程】全志V853开发板硬件指南

开发板硬件指南 本章节将介绍V853开发板上各模块的基础使用方法。 V853开发板集成了LED、WiFi、蓝牙、以太网、音频、屏幕、USB、TF卡等模块。本章节将对这些模块进行简单的操作介绍&#xff0c;方便开发者快速上手了解开发板。 *注&#xff1a; 本文中 rootTinaLinux:~# 开…

Start Timeline Service V2.0 Reader开启失败

原因和解决办法&#xff1a; yarn2需要的内存大小至少是4Gb&#xff0c;报错的原因就是内存不够。 如果是用的vmware&#xff0c;将装yarn服务的主机内存大小调到6G就可以解决了。 报错&#xff1a; Memory: 4k page, physical 3863576k(157772k free), swap 3145724k(16806…

z370 raid linux,Intel也有黑科技:VROC(NVMe RAID)详解

原标题:Intel也有黑科技:VROC(NVMe RAID)详解 作者 白丁 给SSD Fans原创投稿技术或市场文章,拿>=100元稿费。 原文链接:https://www.pcper.com/reviews/Storage/Intel-VROC-Tested-X299-VROC-vs-Z270-RST-Quad-Optane-vs-Quad-960-PRO 这几个月以来,我们已经听说了英特尔…

Oracle v$SQLTEXT

SQL> desc v$sqltext; Name Null? Type ADDRESS RAW(8) HASH_VALUE NUMBER SQL_ID VARCHAR2(13) COMMAND_TYPE NUMBER PIECE NUMBER SQL_TEXT VARCHAR2(64) 但v$sqltext中存储的比较简单&#xff0c;没有该语句的统计信息&#xff0c;比如…