echarts-散点图配置
抽取数据形成二维数组 用于散点图的两个坐标轴
具体配置项:
x轴和y轴都是数值轴
yAxis: { type: 'value', scale:true, // 轴的起点 不从0开始 (智能匹配) name: '体重(kg)' }, xAxis: { type: 'value', scale:true, name: '身高(cm)' },
通过函数形式决定提示框展示内容
tooltip: {// 提示框组件。// trigger:'item' 默认的鼠标移动到色块上触发 trigger: 'item', formatter:function (args) { return ` 编号:${args.dataIndex} <br/> 身高:${args.value[0]}cm <br/> 体重:${args.value[1]}kg ` } }
系列里面的配置 注释写的很详细
series: [ { name: '身高体重散点', //type: 'scatter', // scatter 是普通散点图 type:'effectScatter',// type : 带涟漪动画的散点图 showEffectOn:'emphasis', // 触发效果 render 自动 emphasis 鼠标经过的触发 rippleEffect:{ scale:4 // 激活时的波纹步长 }, data:abc, // 上面定义的数据 symbolSize:function (arg) { // 每个点的大小可以通过回调函数配置 let hhh = arg[0] / 100 let www = arg[1] // bmi = 体重KG / 身高m*身高m 结果大于28就是超标 let bmi = www/(hhh*hhh) if (bmi > 28){ return 12 } return 7 }, itemStyle:{ color:function (arg) { // 每个点颜色可以通过回调函数配置 let hhh = arg.data[0] / 100 let www = arg.data[1] // bmi = 体重KG / 身高m*身高m 结果大于28就是超标 let bmi = www / (hhh * hhh) if (bmi > 28){ return '#f35' } return '#107ea4' }, } } ]
完整代码:
-
let scatterData = [{ "gender": "female", "height": 161.2, "weight": 51.6 }, { "gender": "female", "height": 167.5, "weight": 59 }......]
-
let abc = []
-
scatterData.forEach(item =>{
-
let hhh = item.height
-
let www = item.weight
-
let SArr = [hhh,www]
-
abc.push(SArr)
-
})
-
-
let mCharts = echarts.init(document.querySelector('#main'))
-
let options1 = {
-
title: {
-
text: '散点图'
-
},
-
yAxis: {
-
type: 'value',
-
scale:true,
-
name: '体重(kg)'
-
},
-
xAxis: {
-
type: 'value',
-
scale:true,
-
name: '身高(cm)'
-
},
-
tooltip: {// 提示框组件。// trigger:'item' 默认的鼠标移动到色块上触发
-
trigger: 'item',
-
//formatter:'身高:{b}<br/>体重:{c}'
-
formatter:function (args) {
-
//console.log(args)
-
return `
-
编号:${args.dataIndex} <br/>
-
身高:${args.value[0]}cm <br/>
-
体重:${args.value[1]}kg `
-
}
-
},
-
series: [
-
{
-
name: '身高体重散点',
-
//type: 'scatter', // scatter 是普通散点图
-
type:'effectScatter',// type : 带涟漪动画的散点图
-
showEffectOn:'emphasis', // 触发效果 render 自动 emphasis 鼠标经过的触发
-
rippleEffect:{
-
scale:4 // 激活时的波纹步长
-
},
-
data:abc, // 上面定义的数据
-
symbolSize:function (arg) { // 每个点的大小可以通过回调函数配置
-
let hhh = arg[0] / 100
-
let www = arg[1]
-
// bmi = 体重KG / 身高m*身高m 结果大于28就是超标
-
let bmi = www/(hhh*hhh)
-
if (bmi > 28){
-
return 12
-
}
-
return 7
-
},
-
itemStyle:{
-
color:function (arg) { // 每个点颜色可以通过回调函数配置
-
let hhh = arg.data[0] / 100
-
let www = arg.data[1]
-
// bmi = 体重KG / 身高m*身高m 结果大于28就是超标
-
let bmi = www / (hhh * hhh)
-
if (bmi > 28){
-
return '#f35'
-
}
-
return '#107ea4'
-
},
-
}
-
}
-
]
-
}
-
mCharts.setOption(options1)
这篇好文章是转载于:学新通技术网
- 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
- 本站站名: 学新通技术网
- 本文地址: /boutique/detail/tanhgbgkec
系列文章
更多
同类精品
更多
-
photoshop保存的图片太大微信发不了怎么办
PHP中文网 06-15 -
Android 11 保存文件到外部存储,并分享文件
Luke 10-12 -
《学习通》视频自动暂停处理方法
HelloWorld317 07-05 -
word里面弄一个表格后上面的标题会跑到下面怎么办
PHP中文网 06-20 -
photoshop扩展功能面板显示灰色怎么办
PHP中文网 06-14 -
微信公众号没有声音提示怎么办
PHP中文网 03-31 -
excel下划线不显示怎么办
PHP中文网 06-23 -
怎样阻止微信小程序自动打开
PHP中文网 06-13 -
excel打印预览压线压字怎么办
PHP中文网 06-22 -
TikTok加速器哪个好免费的TK加速器推荐
TK小达人 10-01