Vue + ECharts 饼形图配置详解
创作时间:
作者:
@小白创作中心
Vue + ECharts 饼形图配置详解
引用
CSDN
1.
https://m.blog.csdn.net/w_jiunian/article/details/140347300
ECharts 是一个基于 JavaScript 的开源可视化库,可以流畅地运行在 PC 和移动设备上,兼容当前绝大部分浏览器(IE8/9/10/11,Chrome,Firefox,Safari等)。Vue.js 是一个用于构建用户界面的渐进式框架。两者结合使用,可以快速开发出功能丰富、交互友好的数据可视化应用。
下面是一个使用 Vue 和 ECharts 创建饼形图的配置示例:
import { EChartsOption, graphic } from 'echarts'
import rightCircle from '@/assets/imgs/index/right_circle.png'
export const pieOption: EChartsOption = {
title: {
text: '100%',
subtext: '游客加量',
left: '19%',
top: '42%',
textStyle: {
fontSize: 24,
color: '#fff',
align: 'center',
fontWeight: 700
},
subtextStyle: {
fontSize: 16,
color: '#fff',
align: 'center',
fontWeight: 500
}
},
tooltip: {
trigger: 'item'
},
legend: {
orient: 'vertical',
top: '30%',
left: '60%', // left给成right,直接会出现在图表右侧,但是图例的色块也会出现在文字的右侧
textStyle: {
//图例中文字的样式
color: "#ffffff",
fontSize: 14,
fontWeight: 500,
lineHeight: 20
},
itemWidth: 12, // 设置图例颜色块的宽度
itemHeight: 12, // 设置图例颜色块的高度
itemStyle: {
borderRadius: 2
},
formatter: function (name) { // 设置图例展示方式
let target
let sum = 0
let durationArray = pieOption.series[0].data
for (let i = 0; i < durationArray.length; i++) {
sum += durationArray[i].value
if (durationArray[i].name == name) {
target = durationArray[i].value
}
}
let params = `${name} ${((target / sum) * 100).toFixed(2) + '%'}`
let tmp = params.split('\n')
let res = '' + params
for (let i in tmp) {
res = res.replace(tmp[i], ' ')
}
console.log('sdsd', res+params)
return res + params + '\n' + target + '人次'
}
},
graphic: [ // 设置图表外层背景
{
type: 'image',
left: '3%',
top: '16%',
z: -10,
bounding: 'raw',
rotation: 0, //旋转
// origin: [510, 100], //中心点
scale: [1.1, 1.1], //缩放
style: {
// 背景图
image: rightCircle,
opacity: 1
}
}
],
series: [
{
left: '-45%',
type: 'pie',
radius: ['50%', '40%'],
avoidLabelOverlap: false,
padAngle: 5,
itemStyle: {
borderRadius: 10
},
label: {
show: false,
position: 'center'
},
labelLine: {
show: false
},
data: [
{ value: 1048, name: '国内游客' },
{ value: 735, name: '国外游客' },
{ value: 580, name: '港澳台游客' }
]
}
]
}
这个配置示例展示了如何创建一个带有标题、图例和自定义样式的饼形图。通过调整 title
、legend
、graphic
和 series
等配置项,可以实现丰富的图表效果。
热门推荐
项庄舞剑:项羽与刘邦的权衡与较量
海南昌江皇帝洞:自然与人文的完美融合
欠40万网贷无力偿还怎么办?有哪些解决方案?
西红柿炒鸡蛋,先炒西红柿?还是先炒鸡蛋,大厨教你不一样的做法
张掖市旅游指南:探索黄河上游的秘密
动态心电图结果怎么看? 揭秘心电图数据的异常信号
中国提出创新算法:NVIDIA GPU科学计算性能提升800倍!
常熬夜/忍尿易伤肾?5招预防肾病免洗肾,这样饮水最有效!
肾病的症状、预防及最新治疗方法
行业研究如何获取关键信息
射波刀适合哪些肿瘤?
五蕴皆空是什么意思?《心经》中这个故事让人瞬间明白
《心经》念了好几遍,还是不懂啥意思?
保险出险的多少影响保险费用吗 出险的金额多少影响第二年保险金额
促进小麦土壤肥力提升的综合施肥技术及其应用分析
低剂量维生素E也能治疗脂肪肝?中国研究证实,有效且更安全
融入感情是写作的最高境界,真情实感是引流的重要法宝
民法典对夫妻财产约定的认定
“City不City”“she young young”……双语梗为何频频出圈?
天冷易饿?营养师推荐低脂暖身料理,这样吃既保暖又不易发胖
国家规定的产假天数及法律解读
Win11上检测手柄怎么做?如何确认手柄连接正常?
VScode配置自动代码格式化C/C++详解
Unity VS 虚幻引擎,你应该选择哪一个?
Unity 和虚幻引擎有什么作用?主要区别是?学哪个?
如何发现具有潜力的翻倍牛股?这种发现有哪些技巧?
情绪智商如何提升你的领导力效能?
豆雁:一种大型雁类的生态特征与分布现状
寻找养老产业的下一个“风口”:不打价格战 重点关注老人的精神需求
庞贝古城发现古罗马儿童涂鸦:记录角斗士决斗场景