Vue中使用ECharts,根据父级DIV及窗口自适应图表,数据驱动图表
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Vue中使用ECharts,根据父级DIV及窗口自适应图表,数据驱动图表相关的知识,希望对你有一定的参考价值。
参考技术A 方法,使用ECharts自带API (resize)配合VUE自定义轮询命令一、模板部分
二、JS部分
三、Vue自定义轮询命令v-resize
希望对需要使用ECharts图表的同志有所帮助.
也希望各位大佬提出我的不足,感谢
35-Vue之ECharts高级-样式及自适应
ECharts高级-样式及自适应
前言
- 本篇来学习下样式及自适应的使用
样式
直接样式
- 这些样式一般都可以设置颜色或者背景或者字体等样式, 他们会覆盖主题中的样式
- itemStyle
- textStyle
- lineStyle
- areaStyle
- label
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>样式</title>
<!-- cdn方式 引入echarts.js文件 -->
<script src="https://cdn.jsdelivr.net/npm/echarts@5.4.1/dist/echarts.min.js"></script>
</head>
<body>
<div id='app' style="width: 600px;height:400px"></div>
<script>
var mCharts = echarts.init(document.getElementById("app"))
var pieData = [
name: 'pass',
value: 80,
itemStyle: // 控制pass这一区域的样式
color: '#00FF00'
,
name: 'fail',
value: 10
,
name: 'skip',
value: 5,
itemStyle: // 控制error这一区域的样式
color: '#00FFFF'
,
name: 'error',
value: 5,
label:
color: '#FF0000' // 文字(name值)颜色
,
itemStyle: // 控制error这一区域的样式
color: '#FF0000'
]
var option =
title:
text: '测试结果',
textStyle: // 控制标题的文字样式
color: 'blue'
,
series: [
type: 'pie',
data: pieData,
label:
show: true,
formatter: function (arg)
console.log(arg)
return arg.data.name + '\\n' + arg.percent + '%'
,
selectedMode: 'multiple', // multiple 多选 single 单选
selectedOffset: 30,// 偏移距离
radius: ['50%', '80%']
]
mCharts.setOption(option)
</script>
</body>
</html>
高亮样式
- 鼠标滑过或者点击形成的高亮状态. 而高亮样式是针对于元素的高亮状态设定的样式
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>样式</title>
<!-- cdn方式 引入echarts.js文件 -->
<script src="https://cdn.jsdelivr.net/npm/echarts@5.4.1/dist/echarts.min.js"></script>
</head>
<body>
<div id='app' style="width: 600px;height:400px"></div>
<script>
var mCharts = echarts.init(document.getElementById("app"))
var pieData = [
name: 'pass',
value: 80,
itemStyle: // 控制pass这一区域的样式
color: '#00FF00'
,
name: 'fail',
value: 10
,
name: 'skip',
value: 5,
itemStyle: // 控制error这一区域的样式
color: '#00FFFF'
,
emphasis:
itemStyle: // 高亮(点击时显示的颜色)
color: 'pink'
,
name: 'error',
value: 5,
label:
color: '#FF0000' // 文字(name值)颜色
,
itemStyle: // 控制error这一区域的样式
color: '#FF0000'
]
var option =
title:
text: '测试结果',
textStyle: // 控制标题的文字样式
color: 'blue'
,
series: [
type: 'pie',
data: pieData,
label:
show: true,
formatter: function (arg)
console.log(arg)
return arg.data.name + '\\n' + arg.percent + '%'
,
selectedMode: 'multiple', // multiple 多选 single 单选
selectedOffset: 30,// 偏移距离
radius: ['50%', '80%']
]
mCharts.setOption(option)
</script>
</body>
</html>
自适应
- 监听窗口大小变化事件
- 在事件处理函数中调用 ECharts 实例对象的 resize 即可
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>自适应</title>
<!-- cdn方式 引入echarts.js文件 -->
<script src="https://cdn.jsdelivr.net/npm/echarts@5.4.1/dist/echarts.min.js"></script>
</head>
<body>
<!-- 准备一个呈现图表的盒子 -->
<div id='app' style="height:600px"></div>
<script>
// 初始化echarts实例对象
var myCharts = echarts.init(document.getElementById('app'))
// 准备数据 将type的值设置为bar
var xDataArr = ['张三', '李四', '王五', '大明白', '小糊涂'] // x轴数据
var yDataArr = [88, 92, 63, 77, 94] // y轴数据
var option =
xAxis:
type: 'category',
data: xDataArr
,
yAxis:
type: 'value'
,
series: [
name: '分数',
type: 'bar', // 图表类型 bar:柱状图 line:折线图 pie:饼图
data: yDataArr,
markPoint: // 标记最大最小值
data: [
type: 'max', name: '最大值',
type: 'min', name: '最小值'
]
,
markLine:
data: [
type: 'average', name: '平均值'
]
,
label:
show: true, // 柱状图显示数值
rotate: 30, // 值旋转角度
,
barWidth: '30%' // 柱的宽度
]
// 将配置项设置给echarts实例对象
myCharts.setOption(option)
// 监听window大小变化的事件
window.onresize = function ()
// 调用echarts示例对象的resize方法
myCharts.resize()
// window.onresize = myCharts.resize // 简单写法
</script>
</body>
</html>
以上是关于Vue中使用ECharts,根据父级DIV及窗口自适应图表,数据驱动图表的主要内容,如果未能解决你的问题,请参考以下文章