Toggle navigation
环形图
By
巨***a
2020-09-21 05:53:24
脚本
16
21
作品使用的第三方脚本
数据管理
上传数据
支持小于 5M 任意格式(csv, xlsx, json, xml, ...)的数据文件
上传后可以通过生成的文件链接异步获取托管的数据。
历史数据
0 条
无历史数据
代码修改记录
信息提示
保存作品
对当前截图不满意?你还可以
上传本地截图
重新截图
作品名称
作品描述
标签
geo
grid
legend
markLine
markPoint
bar
effectScatter
line
lines
map
timeline
title
toolbox
tooltip
visualMap
作品默认版本
最新
16
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
20:11:45
图表已生成
整理代码
刷新
代码
let angle = 0;//角度,用来做简单的动画效果的 let value = 2751; option = { backgroundColor:"#061740", title: { text: '{a|'+ value +'}', x: 'center', y: 'center', textStyle: { rich:{ a: { fontSize: 48, color: '#d35161' }, c: { fontSize: 20, color: '#d35161', // padding: [5,0] } } } }, series: [ { name: "ring5", type: 'custom', coordinateSystem: "none", renderItem: function(params, api) { return { type: 'arc', shape: { cx: api.getWidth() / 2, cy: api.getHeight() / 2, r: Math.min(api.getWidth(), api.getHeight()) / 2 * 0.7, startAngle: (5+angle) * Math.PI / 180, endAngle: (175+angle) * Math.PI / 180 }, style: { stroke: "#d35161", fill: "transparent", lineWidth: 1.5 }, silent: true }; }, data: [0] }, { name: "ring5", type: 'custom', coordinateSystem: "none", renderItem: function(params, api) { return { type: 'arc', shape: { cx: api.getWidth() / 2, cy: api.getHeight() / 2, r: Math.min(api.getWidth(), api.getHeight()) / 2 * 0.7, startAngle: (185+angle) * Math.PI / 180, endAngle: (355+angle) * Math.PI / 180 }, style: { stroke: "#d35161", fill: "transparent", lineWidth: 1.5 }, silent: true }; }, data: [0] }, { name: "ring5", type: 'custom', coordinateSystem: "none", renderItem: function(params, api) { return { type: 'arc', shape: { cx: api.getWidth() / 2, cy: api.getHeight() / 2, r: Math.min(api.getWidth(), api.getHeight()) / 2 * 0.65, startAngle: (275+-angle) * Math.PI / 180, endAngle: (-5+-angle) * Math.PI / 180 }, style: { stroke: "#84888a", fill: "transparent", lineWidth: 1.5 }, silent: true }; }, data: [0] }, { name: "ring5", type: 'custom', coordinateSystem: "none", renderItem: function(params, api) { return { type: 'arc', shape: { cx: api.getWidth() / 2, cy: api.getHeight() / 2, r: Math.min(api.getWidth(), api.getHeight()) / 2 * 0.65, startAngle: (5+-angle) * Math.PI / 180, endAngle: (85+-angle) * Math.PI / 180 }, style: { stroke: "#84888a", fill: "transparent", lineWidth: 1.5 }, silent: true }; }, data: [0] }, { name: "ring5", type: 'custom', coordinateSystem: "none", renderItem: function(params, api) { return { type: 'arc', shape: { cx: api.getWidth() / 2, cy: api.getHeight() / 2, r: Math.min(api.getWidth(), api.getHeight()) / 2 * 0.65, startAngle: (95+-angle) * Math.PI / 180, endAngle: (175+-angle) * Math.PI / 180 }, style: { stroke: "#84888a", fill: "transparent", lineWidth: 1.5 }, silent: true }; }, data: [0] }, { name: "ring5", type: 'custom', coordinateSystem: "none", renderItem: function(params, api) { return { type: 'arc', shape: { cx: api.getWidth() / 2, cy: api.getHeight() / 2, r: Math.min(api.getWidth(), api.getHeight()) / 2 * 0.65, startAngle: (185+-angle) * Math.PI / 180, endAngle: (265+-angle) * Math.PI / 180 }, style: { stroke: "#84888a", fill: "transparent", lineWidth: 1.5 }, silent: true }; }, data: [0] }, { name: "ring5", type: 'custom', coordinateSystem: "none", renderItem: function(params, api) { console.log(api.getHeight) let x0 = api.getWidth()/2; let y0 = api.getHeight()/2.05; let r = Math.min(api.getWidth(), api.getHeight()) / 2 * 0.65; let point = getCirlPoint(x0, y0, r, (85+-angle)) return { type: 'rect', shape: { x: point.x, y:point.y, width: 3, height: 10 }, style: { stroke: "#84888a",//粉 fill: "#84888a" }, silent: true }; }, data: [0] }, { name: "ring5", type: 'custom', coordinateSystem: "none", renderItem: function(params, api) { let x0 = api.getWidth() / 2; let y0 = api.getHeight() / 2.05; let r = Math.min(api.getWidth(), api.getHeight()) / 2 * 0.65; let point = getCirlPoint(x0, y0, r, (95.5+-angle)) return { type: 'rect', shape: { x: point.x, y:point.y, width: 3, height: 10 }, style: { stroke: "#84888a",//粉 fill: "#84888a" }, silent: true }; }, data: [0] }, { name: "ring5", //绿点 type: 'custom', coordinateSystem: "none", renderItem: function(params, api) { let x0 = api.getWidth() / 2; let y0 = api.getHeight() / 2; let r = Math.min(api.getWidth(), api.getHeight()) / 2 * 0.65; let point = getCirlPoint(x0, y0, r, (275+-angle)) return { type: 'rect', shape: { x: point.x, y:point.y, width: 3, height: 10 }, style: { stroke: "#84888a", //绿 fill: "#84888a" }, silent: true }; }, data: [0] }, { name: "ring5", //绿点 type: 'custom', coordinateSystem: "none", renderItem: function(params, api) { let x0 = api.getWidth() / 2; let y0 = api.getHeight() / 2; let r = Math.min(api.getWidth(), api.getHeight()) / 2 * 0.65; let point = getCirlPoint(x0, y0, r, (265+-angle)) return { type: 'rect', shape: { x: point.x, y:point.y, width: 3, height: 10 }, style: { stroke: "#84888a", //绿 fill: "#84888a" }, silent: true }; }, data: [0] }, { name: '攻击次数', type: 'pie', radius: ['58%', '45%'], silent: true, clockwise: true, startAngle: 90, z: 0, zlevel: 0, label: { normal: { position: "center", } }, data: [{ value: value, name: "", itemStyle: { normal: { color: '#373a41', } } }, { value: 100000-value, name: "", label: { normal: { show: false } }, itemStyle: { normal: { color: "#373a41" } } } ] } ] }; //获取圆上面某点的坐标(x0,y0表示坐标,r半径,angle角度) function getCirlPoint(x0, y0, r, angle) { let x1 = x0 + r * Math.cos(angle * Math.PI / 180) let y1 = y0 + r * Math.sin(angle * Math.PI / 180) return { x: x1, y: y1 } } // function draw(){ // angle = angle+3 // myChart.setOption(option, true) // //window.requestAnimationFrame(draw); // } // setInterval(function() { // //用setInterval做动画感觉有问题 // draw() // }, 100);