import * as echarts from 'echarts'
/** 255
* 统一样式,加载
* @param {*} id
* @param {*} option
*/
export function loadEcharts(id, option) {
var myChart = echarts.init(document.getElementById(id))
if (option.textStyle == null) {
option.textStyle = {
fontFamily: 'Microsoft YaHei',
color: '#ffffff'
}
}
// 使用刚指定的配置项和数据显示图表。
myChart.clear()
myChart.setOption(option, true)
window.addEventListener('resize', function() {
myChart.resize()
})
return myChart
}
const colorX = '#c7e7ff'
const colorY = '#7696c5'
// 脉链看板
export function mapArea() {
}
export function pie1(data) {
const titleArr = []
const seriesArr = []
const colors = [['#389af4', '#dfeaff'], ['#ff8c37', '#ffdcc3'], ['#ffc257', '#ffedcc'], ['#fd6f97', '#fed4e0'], ['#a181fc', '#e3d9fe']]
data.forEach(function(item, index) {
titleArr.push(
{
text: item.name,
left: index * 20 + 9.5 + '%',
top: '55%',
textAlign: 'center',
textStyle: {
fontWeight: 'normal',
fontSize: '16',
color: colors[index][0],
textAlign: 'center'
}
}
)
seriesArr.push(
{
name: item.name,
type: 'pie',
clockWise: false,
radius: [50, 60], // 调整饼图大小
itemStyle: {
normal: {
color: colors[index][0],
shadowColor: colors[index][0],
shadowBlur: 0,
label: {
show: false
},
labelLine: {
show: false
}
}
},
hoverAnimation: false,
center: [index * 20 + 10 + '%', '50%'],
data: [{
value: item.value,
label: {
normal: {
formatter: function(params) {
return params.value + '%'
},
position: 'center',
show: true,
textStyle: {
fontSize: '16',
fontWeight: 'normal',
// fontWeight: 'bold',
color: colors[index][0]
}
}
}
}, {
value: 100 - item.value,
name: 'invisible',
itemStyle: {
normal: {
color: colors[index][1]
},
emphasis: {
color: colors[index][1]
}
}
}]
}
)
})
const option = {
backgroundColor: 'transparent',
title: titleArr,
series: seriesArr
}
return option
}
export function bar1(data1, data2) {
const titleText = '工厂人员出勤率'
const path = 'path://M214,1079l8-6h16l8,6-8,6H222Z'
// const data1 = ['80', '90', '70', '30', '50']
// const data2 = ['70', '60', '50', '40', '30']
const option = {
backgroundColor: 'transparent',
// tooltip: {
// show: false,
// trigger: 'axis',
// axisPointer: { // 坐标轴指示器,坐标轴触发有效
// type: 'shadow' // 默认为直线,可选为:'line' | 'shadow'
// },
// formatter: function(e) {
// if (e.length > 1) {
// var S = e[1].data - e[0].data
// return e[0].axisValue + ':
差额=当前-年初
=' + S
// } else if (e.length = 1) {
// return e[0].axisValue + ':
' + e[0].seriesName + '=' + e[0].data
// }
// }
// },
title: {
text: titleText,
x: '40%',
y: '0%',
textStyle: {
// color: '#fff',
color: '#00ffff',
fontSize: '20',
fontWeight: 'bolder'
},
subtextStyle: {
color: '#90979c',
fontSize: '16'
}
},
grid: {
left: '4%',
right: '4%',
bottom: '4%',
top: '15%',
containLabel: true
},
legend: {
show: false,
// data: ['title1', 'title2'],
data: ['title1'],
left: 220,
top: 10,
textStyle: {
color: '#00ffff',
fontSize: 14
},
itemWidth: 12,
itemHeight: 10,
itemGap: 35,
color: '#242424'
},
xAxis: {
type: 'category',
// data: ['车间一', '车间二', '车间三', '车间四', '车间五'],
data: ['浙江皇冠', '永康皇冠', '北辰电机', '恒泰皇冠园林', '迈拓塑业'],
axisLine: {
lineStyle: {
show: true,
lineStyle: {
color: '#6A989E'
}
}
},
axisLabel: {
// interval: 0,
// rotate: 40,
textStyle: {
fontFamily: 'Microsoft YaHei',
color: colorX, // x轴颜色
fontWeight: 'normal',
fontSize: '12',
lineHeight: 22
}
}
// splitLine:{
// show:true,
// lineStyle: {
// type: 'dashed',
// color: 'rgba(135,140,147,0.8)'
// }
// },
},
yAxis:
{
name: '%',
nameTextStyle: {
color: colorY,
fontSize: 14,
lineHeight: 20
},
boundaryGap: false,
splitNumber: 4,
type: 'value',
axisLabel: {
textStyle: {
fontSize: 14,
color: '#7696c5'
// color: this.colorY
}
},
splitLine: {
show: true,
lineStyle: {
color: '#032c58'
}
},
axisLine: {
show: true,
lineStyle: {
color: '#032c58'
}
},
axisTick: {
show: true
}
},
// {
// type: 'value',
// // name: '数量(单位:个)',
// name: '',
// nameTextStyle: {
// color: '#ffffff'
// },
// axisLine: {
// show: false,
// lineStyle: {
// type: 'dashed',
// color: 'rgba(135,140,147,0.8)'
// }
// },
// splitLine: {
// show: true,
// lineStyle: {
// color: 'rgba(135,140,147,1)' // 左侧显示线
// }
// },
// axisLabel: {
// formatter: '{value}',
// color: colorY,
// fontSize: 14
// }
// },
series: [
{
type: 'pictorialBar',
symbol: path,
symbolSize: [30, 8],
// symbolOffset: [-18, -4],
symbolOffset: [0, -4],
symbolPosition: 'end',
z: 12,
color: '#3440FF',
data: data1
},
// {
// type: 'pictorialBar',
// symbol: path,
// symbolSize: [30, 8],
// symbolOffset: [18, -4],
// // symbolOffset: [20, -5],
// symbolPosition: 'end',
// z: 12,
// color: '#FF1155',
// data: data2
// },
{
type: 'pictorialBar',
symbol: path,
symbolSize: [30, 8],
// symbolOffset: [-18, 4],
symbolOffset: [0, 4],
z: 12,
color: 'rgba(126,192,238,0.6)',
data: data1
},
// {
// name: '',
// type: 'pictorialBar',
// symbol: path,
// symbolSize: [30, 8],
// // symbolOffset: [20, 4],
// symbolOffset: [18, 4],
// color: '#FFC0CB',
// z: 12,
// data: data2
// },
{
name: 'title1',
type: 'bar',
barWidth: '30',
itemStyle: {
normal: {
opacity: 0.7,
color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [{
offset: 0,
color: 'blue'
}, {
offset: 1,
color: '#7EC0EE'
}]),
barBorderRadius: 0
}
},
label: {
show: true,
// position: ['-18','-18'],
position: 'top',
color: '#00f8ff',
fontSize: 12
},
data: data1
}
// {
// name: 'title2',
// type: 'bar',
// barWidth: '30',
// itemStyle: {
// normal: {
// opacity: 0.7,
// color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [{
// offset: 0,
// color: '#FF2246'
// }, {
// offset: 1,
// color: '#FFC0CB'
//
// }]),
// barBorderRadius: 0
// }
//
// },
// label: {
// show: true,
// // position: ['18','-18'],
// position: 'top',
// color: '#00f8ff',
// fontSize: 12
// },
// data: data2
// }
]
}
return option
}
export function line1(dataY, dataY2, dataY3, dataY4, dataY5) {
const option = {
backgroundColor: 'transparent',
grid: {
left: '4%',
right: '4%',
bottom: '4%',
top: '15%',
containLabel: true
},
title: {
// text: '销售额概览',
text: '各工厂能耗',
left: '50%',
top: '0%',
textAlign: 'center',
textStyle: {
// color: '#fff',
color: '#00ffff',
fontSize: '20',
fontWeight: 'bolder'
}
},
tooltip: {
trigger: 'axis',
axisPointer: {
lineStyle: {
color: '#ddd'
}
},
backgroundColor: 'rgba(255,255,255,1)',
padding: [5, 10],
textStyle: {
color: '#7588E4'
},
extraCssText: 'box-shadow: 0 0 5px rgba(0,0,0,0.3)'
},
legend: {
show: false,
right: 20,
orient: 'vertical',
data: ['浙江皇冠', '永康皇冠', '北辰电机', '恒泰皇冠园林', '迈拓塑业']
},
xAxis: {
// data: ['00:00','2:00','4:00','6:00','8:00','10:00','12:00','14:00','16:00','18:00','20:00',"22:00"],
// data: ['1月', '2月', '3月', '4月', '5月', '6月', '7月', '8月', '9月', '10月', '11月', '12月'],
data: ['1月', '2月', '3月', '4月', '5月', '6月', '7月', '8月', '9月', '10月', '11月', '12月'],
// type: 'category',
// boundaryGap: true,
// axisLabel: {
// interval: 0,
// formatter: '{value}',
// fontSize: 14,
// margin: 20,
// textStyle: {
// // color: this.colorX
// color: '#c7e7ff'
// }
// },
// axisLine: {
// lineStyle: {
// color: '#032c58'
// }
// },
// splitLine: {
// show: false,
// lineStyle: {
// color: '#032c58'
// }
// },
// axisTick: {
// show: false
// }
// name: '月',
// nameTextStyle: {
// color: colorX,
// fontSize: 14,
// lineHeight: 20
// },
boundaryGap: false,
// splitLine: {
// show: false,
// interval: 'auto',
// lineStyle: {
// color: ['#D4DFF5']
// }
// },
axisTick: {
show: false
},
axisLine: {
lineStyle: {
show: true,
lineStyle: {
color: '#6A989E'
}
}
},
axisLabel: {
margin: 10,
textStyle: {
color: colorX,
fontSize: 14
}
}
},
yAxis:
{
name: '',
nameTextStyle: {
color: colorY,
fontSize: 14,
lineHeight: 20
},
boundaryGap: false,
splitNumber: 5,
type: 'value',
// offset: -30,
axisLabel: {
textStyle: {
fontSize: 14,
color: '#7696c5'
// color: this.colorY
}
},
splitLine: {
show: true,
lineStyle: {
color: '#032c58'
}
},
axisLine: {
show: true,
lineStyle: {
color: '#032c58'
}
},
axisTick: {
show: true
}
},
series: [
{
name: '浙江皇冠',
type: 'line',
smooth: true,
showSymbol: false,
symbol: 'circle',
symbolSize: 6,
// data: ['200', '400', '500', '300', '400', '500', '600', '800', '900', '1000', '1100', '1322'],
data: dataY,
areaStyle: {
normal: {
color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [{
offset: 0,
color: 'rgba(0,215,236,0.5)'
}, {
offset: 1,
color: 'rgba(0,215,236,0.2)'
}], false)
}
},
itemStyle: {
normal: {
// color: '#f7b851'
// color: `rgb(73, 226, 196)`
color: `rgb(0, 215, 236)`
}
},
lineStyle: {
normal: {
width: 3
}
}
},
{
name: '永康皇冠',
type: 'line',
smooth: true,
showSymbol: false,
symbol: 'circle',
symbolSize: 6,
// data: ['1200', '1400', '808', '811', '626', '488', '1600', '1100', '500', '300', '1998', '822'],
data: dataY2,
areaStyle: {
normal: {
color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [{
offset: 0,
color: 'rgba(60,244,184,0.5)'
}, {
offset: 1,
color: 'rgba(60,244,184,0.2)'
}], false)
}
},
itemStyle: {
normal: {
color: `rgb(60, 244, 184)`
}
},
lineStyle: {
normal: {
width: 3
}
}
},
{
name: '北辰电机',
type: 'line',
smooth: true,
showSymbol: false,
symbol: 'circle',
symbolSize: 6,
// data: ['1200', '1400', '808', '811', '626', '488', '1600', '1100', '500', '300', '1998', '822'],
data: dataY3,
areaStyle: {
normal: {
color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [{
offset: 0,
color: 'rgba(55,183,255,0.5)'
}, {
offset: 1,
color: 'rgba(55,183,255,0.2)'
}], false)
}
},
itemStyle: {
normal: {
// color: '#58c8da'
color: `rgb(55, 183, 255)`
}
},
lineStyle: {
normal: {
width: 3
}
}
},
{
name: '恒泰皇冠园林',
type: 'line',
smooth: true,
showSymbol: false,
symbol: 'circle',
symbolSize: 6,
// data: ['1200', '1400', '808', '811', '626', '488', '1600', '1100', '500', '300', '1998', '822'],
data: dataY4,
areaStyle: {
normal: {
color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [{
offset: 0,
color: 'rgba(26,202,200,0.5)'
}, {
offset: 1,
color: 'rgba(26,202,200,0.2)'
}], false)
}
},
itemStyle: {
normal: {
// color: '#58c8da'
color: `rgb(26, 202, 200)`
}
},
lineStyle: {
normal: {
width: 3
}
}
},
{
name: '迈拓塑业',
type: 'line',
smooth: true,
showSymbol: false,
symbol: 'circle',
symbolSize: 6,
// data: ['1200', '1400', '808', '811', '626', '488', '1600', '1100', '500', '300', '1998', '822'],
data: dataY5,
areaStyle: {
normal: {
color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [{
offset: 0,
color: 'rgba(243,94,94,0.5)'
}, {
offset: 1,
color: 'rgba(243,94,94,0.2)'
}], false)
}
},
itemStyle: {
normal: {
// color: '#58c8da'
color: `rgb(243, 94, 94)`
}
},
lineStyle: {
normal: {
width: 3
}
}
}
]
}
return option
}
export function pie2(title, scaleData) {
var rich = {
white: {
color: '#ddd',
align: 'center',
padding: [5, 0]
}
}
var placeHolderStyle = {
normal: {
label: {
show: false
},
labelLine: {
show: false
},
color: 'rgba(0, 0, 0, 0)',
borderColor: 'rgba(0, 0, 0, 0)',
borderWidth: 0
}
}
var data = []
for (var i = 0; i < scaleData.length; i++) {
data.push({
value: scaleData[i].value,
name: scaleData[i].name,
itemStyle: {
normal: {
borderWidth: 5,
shadowBlur: 30,
borderColor: new echarts.graphic.LinearGradient(0, 0, 1, 1, [{
offset: 0,
color: '#7777eb'
}, {
offset: 1,
color: '#70ffac'
}]),
shadowColor: 'rgba(142, 152, 241, 0.6)'
}
}
}, {
value: 4,
name: '',
itemStyle: placeHolderStyle
})
}
var seriesObj = [{
name: '',
type: 'pie',
clockWise: false,
radius: [60, 65],
top: '10%',
hoverAnimation: false,
itemStyle: {
normal: {
label: {
show: true,
position: 'outside',
// color: '#ddd',
color: colorX,
formatter: function(params) {
var percent = 0
var total = 0
for (var i = 0; i < scaleData.length; i++) {
total += scaleData[i].value
}
percent = ((params.value / total) * 100).toFixed(0)
if (params.name !== '') {
return params.name + '\n{white|' + '' + percent + '%}'
} else {
return ''
}
},
rich: rich
},
labelLine: {
show: false
}
}
},
data: data
}]
const option = {
backgroundColor: 'transparent',
tooltip: {
show: false
},
top: 'middle',
title: {
text: title,
left: '50%',
top: '7%',
textAlign: 'center',
textStyle: {
color: '#00ffff',
fontSize: '20',
fontWeight: 'bolder'
}
},
legend: {
show: false
},
toolbox: {
show: false
},
series: seriesObj
}
return option
}
export function bar2(list) {
// const list = [500, 400, 300, 200, 200]
const yName = ['浏览客户', '进店客户', '认购客户', '下单客户', '再次购买']
const xData = [500, 400, 300, 200, 100]
// const color = ['#ff3259', '#ff6160', '#ffb065', '#fef568', '#1a6df1', '#15a0ff', '#11e2ff', '#58febe']
const color = ['#ff3259', '#ff6160', '#ffb065', '#fef568', '#1a6df1']
const barWidth = 15
const option = {
backgroundColor: 'transparent',
title: {
text: '平台链接客户',
left: '50%',
top: '5%',
textAlign: 'center',
textStyle: {
// color: '#fff',
color: '#00ffff',
fontSize: '20',
fontWeight: 'bolder'
}
},
xAxis: {
splitLine: {
show: false
},
axisLabel: {
show: false
},
axisTick: {
show: false
},
axisLine: {
show: false
}
},
grid: {
left: '4%',
right: '4%',
bottom: '4%',
top: '15%',
containLabel: true
},
yAxis: [{
inverse: true,
axisLine: {
show: false
},
axisTick: {
show: false
},
axisLabel: {
margin: 10,
textStyle: {
fontSize: 14,
color: colorX
}
},
data: yName
}],
series: [{ // 内
type: 'bar',
barWidth,
legendHoverLink: false,
symbolRepeat: true,
silent: true,
itemStyle: {
normal: {
// barBorderRadius: [4, 4, 4, 4],
color: function(params) {
var colorlist = color
return colorlist[params.dataIndex]
}
}
},
data: list,
z: 1,
animationEasing: 'elasticOut'
},
{ // 背景
type: 'pictorialBar',
animationDuration: 0,
symbolRepeat: 'fixed',
symbolMargin: '20%',
symbol: 'roundRect',
symbolSize: [6, barWidth],
itemStyle: {
normal: {
color: 'rgba(255,255,255,0.3)'
}
},
data: xData,
z: 0,
animationEasing: 'elasticOut'
},
{ // 分隔
type: 'pictorialBar',
itemStyle: {
color: '#051e43'
},
symbolRepeat: 'fixed',
symbolMargin: 4,
symbol: 'roundRect',
symbolClip: true,
symbolSize: [2, barWidth],
symbolPosition: 'start',
symbolOffset: [0, 0],
data: list,
z: 2,
animationEasing: 'elasticOut'
}
]
}
return option
}
export function custom1() {
}
export function bar3() {
const a1 = 20 + Math.floor(Math.random() * 80)
const a2 = 20 + Math.floor(Math.random() * 80)
const a3 = 20 + Math.floor(Math.random() * 80)
const a4 = 20 + Math.floor(Math.random() * 80)
const a5 = 20 + Math.floor(Math.random() * 80)
const a6 = 20 + Math.floor(Math.random() * 80)
const a7 = 20 + Math.floor(Math.random() * 80)
const a8 = 20 + Math.floor(Math.random() * 80)
const a9 = 20 + Math.floor(Math.random() * 80)
const a10 = 20 + Math.floor(Math.random() * 80)
const a11 = 20 + Math.floor(Math.random() * 80)
const a12 = 20 + Math.floor(Math.random() * 80)
const list = [
{
key: '进货数量',
value: [
{ value: a1 },
{ value: a2 },
{ value: a3 },
{ value: a4 },
{ value: a5 },
{ value: a6 },
{ value: a8 },
{ value: a9 },
{ value: a10 },
{ value: a11 },
{ value: a12 }
]
}, {
key: '合格数量',
value: [
{ value: a1 - 2 },
{ value: a2 - 3 },
{ value: a3 - 5 },
{ value: a4 - 1 },
{ value: a5 - 2 },
{ value: a6 - 4 },
{ value: a7 - 5 },
{ value: a8 - 2 },
{ value: a9 - 2 },
{ value: a10 - 6 },
{ value: a11 - 1 },
{ value: a12 - 3 }
]
}, {
key: '不合格数量',
value: [
{ value: 2 },
{ value: 3 },
{ value: 5 },
{ value: 1 },
{ value: 2 },
{ value: 4 },
{ value: 5 },
{ value: 2 },
{ value: 2 },
{ value: 6 },
{ value: 1 },
{ value: 3 }
]
}
]
const color = ['26,171,234', '73,226,196', '255,221,97']
// const xList = ['1月', '2月', '3月', '4月', '5月', '6月', '7月', '8月', '9月', '10月', '11月', '12月']
const xList = ['1月', '2月', '3月', '4月', '5月', '6月', '7月', '8月', '9月', '10月', '11月', '12月']
const seriesData = []
list.forEach((r, i) => {
var o = {
name: r.key,
type: 'bar',
smooth: false,
yAxisIndex: 0,
showSymbol: true,
showAllSymbol: true,
barWidth: 8,
zlevel: 3,
lineStyle: {
normal: {
width: 2,
color: `rgba(${color[i]})`
}
},
areaStyle: {
normal: {
color: {
type: 'linear',
x: 0,
y: 0,
x2: 0,
y2: 1,
colorStops: [
{
offset: 0,
color: `rgba(${color[i]}, 0.0)`// 0% 处的颜色
},
{
offset: 1,
color: `rgba(${color[i]}, 0.0)` // 100% 处的颜色
}
],
globalCoord: false // 缺省为 false
} // 渐变颜色
}
},
itemStyle: {
normal: {
color: {
type: 'linear',
x: 0,
y: 0,
x2: 0,
y2: 1,
colorStops: [
{
offset: 0,
color: `rgba(${color[i]}, 1)`// 0% 处的颜色
},
{
offset: 1,
color: `rgba(${color[i]}, 0.2)` // 100% 处的颜色
}
],
globalCoord: false // 缺省为 false
} // 渐变颜色
}
},
data: r.value.map(r => r.value)
}
// if (i === 0) {
// xList = r.value.map(r => r.key)
// }
// if (r.percent) {
// this.$set(o, 'symbolSize', 6)
// } else {
// this.$set(o, 'symbol', 'path://M0,10 L10,10 L5,0 L0,10 z')
// }
seriesData.push(o)
})
const option = {
backgroundColor: 'transparent',
legend: {
show: true,
data: list.map(r => r.key),
top: '2%',
itemHeight: 20,
itemWidth: 20,
textStyle: {
fontSize: 14,
color: 'F1F1F3'
// color: colorX
},
right: '1%'
},
title: {
text: '合格率分析',
left: '28%',
top: '2%',
textAlign: 'center',
textStyle: {
// color: '#fff',
color: '#00ffff',
fontSize: '20',
fontWeight: 'bolder'
}
},
grid: {
left: '4%',
right: '4%',
bottom: '4%',
top: '15%',
containLabel: true
},
tooltip: {
show: true,
trigger: 'axis', // axis , item
backgroundColor: 'RGBA(0, 0, 0, 0.3)',
borderColor: 'rgba(0, 151, 251, 0.6)',
borderWidth: 1,
borderRadius: 0,
textStyle: {
color: '#BCE9FC',
fontSize: 14,
align: 'left'
}
},
xAxis: [{
type: 'category',
boundaryGap: true,
axisLabel: {
interval: 0,
formatter: '{value}',
fontSize: 14,
margin: 20,
textStyle: {
// color: this.colorX
color: '#c7e7ff'
}
},
axisLine: {
lineStyle: {
color: '#032c58'
}
},
splitLine: {
show: false,
lineStyle: {
color: '#032c58'
}
},
axisTick: {
show: false
},
data: xList
}],
yAxis: [
{
boundaryGap: false,
splitNumber: 4,
type: 'value',
name: '%',
nameTextStyle: {
color: colorY,
fontSize: 14,
lineHeight: 20
},
axisLabel: {
textStyle: {
fontSize: 14,
color: '#7696c5'
// color: this.colorY
}
},
splitLine: {
show: true,
lineStyle: {
color: '#032c58'
}
},
axisLine: {
show: true,
lineStyle: {
color: '#032c58'
}
},
axisTick: {
show: true
}
},
{
boundaryGap: false,
splitNumber: 4,
type: 'value',
axisLabel: {
textStyle: {
fontSize: 14,
// color: this.colorY
color: '#7696c5'
}
},
nameTextStyle: {
color: '#fff',
fontSize: 14,
lineHeight: 40
},
splitLine: {
lineStyle: {
color: '#032c58'
}
},
axisLine: {
show: false
},
axisTick: {
show: true
}
}
],
series: seriesData
}
return option
}
export function bar4() {
const data = [{
name: '浙江皇冠',
value: Math.floor(Math.random() * 10 + 90)
},
{
name: '永康皇冠',
value: Math.floor(Math.random() * 10 + 90)
},
{
name: '北辰电机',
value: Math.floor(Math.random() * 10 + 90)
},
{
name: '恒泰皇冠园林',
value: Math.floor(Math.random() * 10 + 90)
},
{
name: '迈拓塑业',
value: Math.floor(Math.random() * 10 + 90)
}
// {
// name: '车间五',
// value: Math.floor(Math.random() * 10 + 90)
// }
]
const getArrByKey = (data, k) => {
const key = k || 'value'
const res = []
if (data) {
data.forEach(function(t) {
res.push(t[key])
})
}
return res
}
const getSymbolData = (data) => {
const arr = []
for (var i = 0; i < data.length; i++) {
arr.push({
value: data[i].value,
symbolPosition: 'end'
})
}
return arr
}
// console.log(getSymbolData(data));
const option = {
backgroundColor: 'transparent',
grid: {
left: '0%',
right: '4%',
bottom: '4%',
top: '15%',
containLabel: true
},
title: {
text: '工厂达成率',
x: '46%',
y: '5%',
textStyle: {
// color: '#fff',
color: '#00ffff',
fontSize: '20',
fontWeight: 'bolder'
},
subtextStyle: {
color: '#90979c',
fontSize: '16'
}
},
xAxis: {
show: false
},
yAxis: [{
triggerEvent: true,
show: true,
inverse: true,
data: getArrByKey(data, 'name'),
axisLine: {
show: false
},
splitLine: {
show: false
},
axisTick: {
show: false
},
axisLabel: {
show: true,
interval: 0,
color: colorY,
align: 'left',
margin: 60,
formatter: function(value, index) {
return '{title|' + value + '}'
},
rich: {
title: {
width: 50,
align: 'right',
fontSize: 18
}
}
}
}, {
triggerEvent: true,
show: true,
inverse: true,
data: getArrByKey(data, 'name'),
axisLine: {
show: false
},
splitLine: {
show: false
},
axisTick: {
show: false
},
axisLabel: {
interval: 0,
shadowOffsetX: '-20px',
// color: ['#fff'],
color: colorX,
align: 'left',
verticalAlign: 'center',
lineHeight: 40,
fontSize: 18,
formatter: function(value, index) {
return data[index].value + '%'
}
}
}],
series: [{
name: 'XXX',
type: 'pictorialBar',
symbol: 'image://data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADoAAAA6CAMAAADWZboaAAAAZlBMVEUAAABe3uVe3+Vf3uVf3+Zf3uVg3+Zg3+Zf3+Vi4OZh4OZg3+Z86/Bh3+Zi4Odj4Odi4OZ86/B76/B86/Bj4ed56+9x5+xn4umB7/N87PB36e+A7/N+7fF/7vJ/7vJ+7fGA7/OB7/PReX+lAAAAIXRSTlMABQkVDREmIhk3MR10LEFFPHh7cUprXE35h2XnqMLAp+mHAG9cAAAB5ElEQVRIx83WjU7CMBQFYIoiKMqU/XUboHv/l/Tce7t2XamDNSacETEmX86tlK2rx4py150o+MstMBLwWRfHKo6JCVxLnvmFGBjFQ58oF1//sUZhGy/ClSTWObgnL4O+bkeN4nY2okfNMbkRt9/vtxz8InoTsWplJSCzFxPmO8+GpSIByX3YQAuGDWtRKhKjCnxDXhF6Z4yxnZ20Wgko7BMRDmxtSGVaI4kdTIgb+zTYoJQlIMlDlmUFgrcDWWC201qSayqlTkiCddWWeV62VU0YlnpRi9VOKaSUsiyq/N0krwq2Ugt7lVpZl5BfHNiytjagMi+XYp0kCR45hMlivVQrE/uU5pXSrCB5bM6d1t2lOZItMqmliT3q5uVxqxzyW/ccfYLNKx7ZTeykMvNyac2yt2Fbc61MHLSC0rwoxbiNdlQ3GBm1NLHQsHUrtEXppR/ljNpW6DbSCoqlFiVoN6YdaFlgsSFVPs1BdT8OaB5QyQzVcaqWDows/zepxR8ObLglTrdtCRVuRNj4Rrxh+//0ke2f8KVL+Kon3GCSbmsJN9OUW3j6g0Ns+LgCij2u0h+Sghc8mlMPBMgdx5DFh59VmOVHrvmDnoNxCz3J7MFWsMuaLyR089xz/xhlfijvwutR8gv3zk6BLUUeCgAAAABJRU5ErkJggg==',
symbolSize: [50, 50],
symbolOffset: [20, 0],
z: 12,
itemStyle: {
normal: {
color: '#fff'
}
},
data: getSymbolData(data)
}, {
name: '条',
type: 'bar',
showBackground: true,
// barBorderRadius: 30,
yAxisIndex: 0,
data: data,
barWidth: 10,
// align: left,
itemStyle: {
normal: {
color: 'rgba(41, 162, 245, 1)'
// barBorderRadius: 10
}
// color: '#A71A2B',
// barBorderRadius: 4,
}
// label: {
// normal: {
// color: '#fff',
// show: true,
// position: ["-80px", 0],
// textStyle: {
// fontSize: 16
// },
// formatter: function(a, b) {
// return a.name
// }
// }
// }
}]
}
return option
}
export function barline1() {
return {
backgroundColor: 'transparent',
tooltip: {},
title: {
text: '订单完成总数',
left: '50%',
top: '5%',
textAlign: 'center',
textStyle: {
// color: '#fff',
color: '#00ffff',
fontSize: '20',
fontWeight: 'bolder'
}
},
grid: {
left: '4%',
right: '4%',
bottom: '4%',
top: '15%',
containLabel: true
},
legend: {
show: false,
itemGap: 50,
data: ['注册总量', '最新注册量'],
textStyle: {
color: '#f9f9f9',
borderColor: '#fff'
}
},
xAxis: [{
type: 'category',
boundaryGap: true,
axisLabel: {
interval: 0,
formatter: '{value}',
fontSize: 14,
margin: 20,
textStyle: {
color: colorX
}
},
axisLine: {
lineStyle: {
color: '#032c58'
}
},
splitLine: {
show: false,
lineStyle: {
color: '#032c58'
}
},
axisTick: {
show: false
},
data: ['1月', '2月', '3月', '4月', '5月', '6月', '7月', '8月', '9月', '10月', '11月', '12月']
}],
yAxis: [
{
max: 800,
boundaryGap: false,
splitNumber: 4,
type: 'value',
axisLabel: {
textStyle: {
fontSize: 14,
color: colorY
}
},
name: '单',
nameTextStyle: {
color: colorY,
fontSize: 14,
lineHeight: 20
},
splitLine: {
show: true,
lineStyle: {
color: '#032c58'
}
},
axisLine: {
show: true,
lineStyle: {
color: '#032c58'
}
},
axisTick: {
show: true
}
}
],
series: [
{
name: '注册总量',
type: 'line',
// smooth: true, //是否平滑曲线显示
// symbol:'circle', // 默认是空心圆(中间是白色的),改成实心圆
showAllSymbol: true,
symbol: 'emptyCircle',
symbolSize: 6,
lineStyle: {
normal: {
color: '#28ffb3' // 线条颜色
},
borderColor: '#f0f'
},
label: {
show: true,
position: 'top',
textStyle: {
color: '#fff'
}
},
itemStyle: {
normal: {
color: '#28ffb3'
}
},
tooltip: {
show: false
},
areaStyle: { // 区域填充样式
normal: {
// 线性渐变,前4个参数分别是x0,y0,x2,y2(范围0~1);相当于图形包围盒中的百分比。如果最后一个参数是‘true’,则该四个值是绝对像素位置。
color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [{
offset: 0,
color: 'rgba(0,154,120,1)'
},
{
offset: 1,
color: 'rgba(0,0,0, 0)'
}
], false),
shadowColor: 'rgba(53,142,215, 0.9)', // 阴影颜色
shadowBlur: 20 // shadowBlur设图形阴影的模糊大小。配合shadowColor,shadowOffsetX/Y, 设置图形的阴影效果。
}
},
// data: [393, 438, 485, 631, 689, 824, 987]
data: [600 + Math.floor(Math.random() * 100), 600 + Math.floor(Math.random() * 100), 600 + Math.floor(Math.random() * 100), 600 + Math.floor(Math.random() * 100), 600 + Math.floor(Math.random() * 100), 600 + Math.floor(Math.random() * 100), 600 + Math.floor(Math.random() * 100), 600 + Math.floor(Math.random() * 100), 600 + Math.floor(Math.random() * 100), 600 + Math.floor(Math.random() * 100), 600 + Math.floor(Math.random() * 100), 600 + Math.floor(Math.random() * 100)]
}
// {
// name: '最新注册量',
// type: 'bar',
// barWidth: 20,
// tooltip: {
// show: false
// },
// label: {
// show: true,
// position: 'top',
// textStyle: {
// color: '#fff',
// }
// },
// itemStyle: {
// normal: {
// // barBorderRadius: 5,
// // color: new echarts.graphic.LinearGradient(
// // 0, 0, 0, 1,
// // [{
// // offset: 0,
// // color: '#14c8d4'
// // },
// // {
// // offset: 1,
// // color: '#43eec6'
// // }
// // ]
// // )
// color: function (params) {
// var colorList = ['#0ec1ff', '#10cdff', '#12daff', '#15ebff', '#17f8ff', '#1cfffb', '#1dfff1'];
// return colorList[params.dataIndex];
// }
// }
// },
// data: [200, 382, 102, 267, 186, 315, 316]
// }
]
}
}
// 综合看板
export function zhkb01() {
// const zhkb01name = ['计划完成进度(自产)', '计划完成进度(外购)'] // 名称
const zhkb01name = ['', ''] // 名称
const zhkb01Value = [Math.ceil(Math.random() * 10 + 90), Math.ceil(Math.random() * 10 + 90)] // 值
const zhkb01Max = []
const max = Math.ceil(Math.max(...zhkb01Value.map(r => r)) * 1.1)
for (let i = 0; i < zhkb01Value.length; i++) {
zhkb01Max.push(max * 4)
// zhkb01Max.push(100)
}
const option = {
backgroundColor: 'transparent',
grid: {
left: '4%',
right: '4%',
bottom: '4%',
top: '5%',
containLabel: true
},
// tooltip: {
// formatter: (params) => {
// if (params.name !== '') {
// return params.name + ' : ' + zhkb01Value[params.dataIndex]
// }
// },
// textStyle: {
// align: 'left'
// }
// },
xAxis: [
{
type: 'value',
axisLabel: {
show: false,
color: '#fff',
formatter: function(val) {
return val + ''
},
textStyle: {
fontSize: '13'
}
},
min: 0,
max: max, // 计算最大值
interval: max / 5, // 平均分为5份
splitNumber: 5,
splitLine: {
show: false,
lineStyle: {
color: '#fff'
}
},
axisLine: {
show: false,
lineStyle: {
color: '#fff',
width: 1,
opacity: 0.3
}
},
axisTick: {
show: false
}
},
{
type: 'value',
axisLabel: {
show: false
},
min: 0,
max: max, // 计算最大值
interval: max / 10, // 平均分为5份
splitNumber: 10,
splitLine: {
show: false,
lineStyle: {
type: 'dashed',
color: '#D8D8D8'
}
},
axisLine: {
show: false,
lineStyle: {
color: '#fff'
}
},
axisTick: {
show: false
}
}
],
yAxis: [
{
// show: true,//暂时不显示
show: false,
inverse: false,
data: zhkb01name,
axisLabel: {
padding: [30, 0, 0, -135],
// inside: true
textStyle: {
fontSize: 16,
fontFamily: 'PingFang SC',
// fontWeight: 400,
color: '#3dffef',
align: 'left'
}
// formatter: '{value}\n{a|占位}',
// rich: {
// a: {
// // color: 'transparent',
// color: 'red',
// lineHeight: 30,
// fontFamily: 'digital',
// fontSize: 20,
// // shadowColor: 'rgba(0, 0, 0, 1)',
// shadowColor: 'red',
// shadowBlur: 10
// }
// }
},
// scale: true, // 自适应
// offset: 50,
splitLine: {
show: false
},
axisTick: {
show: false
},
axisLine: {
show: false
}
},
{
// 左侧柱状图的Y轴
gridIndex: 0, // y轴所在的 grid 的索引
splitLine: 'none',
axisTick: 'none',
axisLine: 'none',
data: zhkb01Value,
// inverse: true,//是否是反向坐标轴。
axisLabel: {
show: true,
verticalAlign: 'center',
align: 'left',
padding: [0, 0, 0, 0],
textStyle: {
color: '#fff',
fontSize: '20'
},
formatter: function(value) {
return '{x| ' + value + '} {y|' + '%}'
},
rich: {
y: {
color: '#3dffef',
fontFamily: 'Orbitron',
fontSize: 16
},
x: {
color: '#3dffef',
fontFamily: 'Orbitron',
fontSize: 16
}
}
}
}
],
series: [
{
name: '值',
type: 'bar',
barGap: '-130%',
// zlevel: 1,
xAxisIndex: 0,
label: {
show: false,
position: 'right',
textStyle: {
color: '#fff',
fontSize: 20
}
},
itemStyle: {
normal: {
barBorderRadius: 4,
color: {
colorStops: [
{
offset: 0,
color: '#46B7ED' // 0% 处的颜色
},
{
offset: 1,
color: '#48EDD3' // 100% 处的颜色
}
]
}
}
},
barWidth: 12,
data: zhkb01Value,
z: 0
},
{
// 分隔
type: 'pictorialBar',
symbolRotate: '-20',
itemStyle: {
normal: {
color: 'rgba(1, 12, 38, 0.4)'
}
},
symbolRepeat: 'fixed',
symbolMargin: 10,
symbol: 'rect',
symbolClip: true,
symbolSize: [5, 28],
symbolPosition: 'start',
symbolOffset: [0, -1],
data: zhkb01Value,
z: 66,
animationEasing: 'elasticOut'
},
{
name: '背景',
type: 'bar',
barWidth: 14,
barGap: '-110%',
data: zhkb01Max,
itemStyle: {
normal: {
color: 'rgba(5,59,113,.7)',
barBorderRadius: 6,
borderColor: 'rgba(0, 255, 236, 1)'
}
},
z: -1
}
]
}
return option
}
export function zhkb02() {
}
export function zhkb03(title) {
const labelData = []
const labelData1 = []
for (let i = 0; i < 80; ++i) {
labelData.push({
value: 1,
name: i,
itemStyle: {
normal: {
color: 'rgba(0,209,228,0)'
}
}
})
}
for (let i = 0; i < labelData.length; ++i) {
if (labelData[i].name < 15) {
labelData[i].itemStyle = {
normal: {
color: new echarts.graphic.LinearGradient(
0, 1, 0, 0,
[{
offset: 0,
color: '#6dfbff'
},
{
offset: 1,
color: '#02aeff'
}
]
)
}
}
}
}
for (let i = 0; i < 80; ++i) {
labelData1.push({
value: 1,
name: i,
itemStyle: {
normal: {
color: 'rgba(0,209,228,0)'
}
}
})
}
for (let i = 0; i < labelData1.length; ++i) {
if (labelData1[i].name < 80) {
labelData1[i].itemStyle = {
normal: {
color: '#464451'
}
}
}
}
function Pie() {
const dataArr = []
for (var i = 0; i < 100; i++) {
if (i % 10 === 0) {
dataArr.push({
name: (i + 1).toString(),
value: 30,
itemStyle: {
normal: {
color: 'rgba(0,255,255,1)',
borderWidth: 0,
borderColor: 'rgba(0,0,0,0)'
}
}
})
} else {
dataArr.push({
name: (i + 1).toString(),
value: 100,
itemStyle: {
normal: {
color: 'rgba(0,0,0,0)',
borderWidth: 0,
borderColor: 'rgba(0,0,0,0)'
}
}
})
}
}
return dataArr
}
function Pie1() {
const dataArr = []
for (var i = 0; i < 100; i++) {
if (i % 5 === 0) {
dataArr.push({
name: (i + 1).toString(),
value: 20,
itemStyle: {
normal: {
color: 'rgba(0,255,255,1)',
borderWidth: 0,
borderColor: 'rgba(0,0,0,0)'
}
}
})
} else {
dataArr.push({
name: (i + 1).toString(),
value: 100,
itemStyle: {
normal: {
color: 'rgba(0,0,0,0)',
borderWidth: 0,
borderColor: 'rgba(0,0,0,0)'
}
}
})
}
}
return dataArr
}
function Pie2() {
const dataArr = []
for (var i = 0; i < 100; i++) {
if (i % 5 === 0) {
dataArr.push({
name: (i + 1).toString(),
value: 20,
itemStyle: {
normal: {
color: 'rgba(0,255,255,.3)',
borderWidth: 0,
borderColor: 'rgba(0,0,0,0)'
}
}
})
} else {
dataArr.push({
name: (i + 1).toString(),
value: 100,
itemStyle: {
normal: {
color: 'rgba(0,0,0,0)',
borderWidth: 0,
borderColor: 'rgba(0,0,0,0)'
}
}
})
}
}
return dataArr
}
const option = {
grid: {
left: '0%',
right: '0%',
bottom: '0%',
top: '0%',
containLabel: true
},
backgroundColor: 'transparent',
title: [
{
text: title,
x: '46%',
y: '38%',
textAlign: 'center',
textStyle: {
fontSize: 12,
fontWeight: 'normal',
color: '#09d8f2'
}
},
{
text: '99%',
x: '49%',
y: '53%',
textAlign: 'center',
textStyle: {
fontSize: 18,
fontWeight: 800,
color: '#09d8f2'
}
}],
polar: {
radius: ['90%', '85%'],
center: ['50%', '50%']
},
angleAxis: {
max: 100,
show: false,
startAngle: 0
},
radiusAxis: {
type: 'category',
show: true,
axisLabel: {
show: false
},
axisLine: {
show: false
},
axisTick: {
show: false
}
},
series: [
// 最里圈
{
type: 'pie',
radius: ['91%', '89%'],
center: ['50%', '50%'],
data: [{
hoverOffset: 1,
value: 100,
name: '',
itemStyle: {
color: '#2f748b'
},
label: {
show: false
},
labelLine: {
normal: {
smooth: true,
lineStyle: {
width: 0
}
}
},
hoverAnimation: false
}]
},
// 里第二圈
{
name: '',
type: 'bar',
roundCap: true, // 圆角
barWidth: 60,
showBackground: true,
backgroundStyle: {
color: '#3d4767'
},
data: [75],
coordinateSystem: 'polar',
itemStyle: {
normal: {
color: new echarts.graphic.LinearGradient(1, 0, 0, 0, [{
offset: 0,
color: '#0ff'
}, {
offset: 1,
color: '#02aeff'
}])
}
}
},
// 齿轮
{
name: '大环',
type: 'gauge',
splitNumber: 100,
radius: '124%',
center: ['50%', '50%'],
startAngle: 90,
endAngle: -269.9999,
axisLine: {
show: false,
lineStyle: {
color: [[0.3, '#26a7d4'], [1, '#23395a']]
}
},
axisTick: {
show: false
},
splitLine: {
show: true,
length: 8,
lineStyle: {
color: 'auto',
width: 2.5
}
},
axisLabel: {
show: false
},
detail: {
show: false
}
},
// 外圈装饰
{
type: 'pie',
zlevel: 0,
silent: true,
radius: ['110%', '108.5%'],
center: ['50%', '50%'],
z: 1,
label: {
normal: {
show: false
}
},
labelLine: {
normal: {
show: false
}
},
data: Pie()
},
// {
// type: 'pie',
// zlevel: 0,
// silent: true,
// startAngle: -150,
// radius: ['58.5%', '57%'],
// center: ['50%', '50%'],
// z: 1,
// label: {
// normal: {
// show: false
// }
// },
// labelLine: {
// normal: {
// show: false
// }
// },
// data: Pie3()
// },
{
type: 'pie',
zlevel: 0,
silent: true,
startAngle: -140,
radius: ['100%', '98.5%'],
center: ['50%', '50%'],
z: 1,
label: {
normal: {
show: false
}
},
labelLine: {
normal: {
show: false
}
},
data: Pie()
},
{
type: 'pie',
zlevel: 0,
silent: true,
radius: ['98%', '96.5%'],
center: ['50%', '50%'],
z: 1,
label: {
normal: {
show: false
}
},
labelLine: {
normal: {
show: false
}
},
data: Pie1()
},
{
type: 'pie',
zlevel: 0,
silent: true,
startAngle: -140,
radius: ['98%', '96.5%'],
center: ['50%', '50%'],
z: 1,
label: {
normal: {
show: false
}
},
labelLine: {
normal: {
show: false
}
},
data: Pie2()
},
{
type: 'pie',
zlevel: 0,
silent: true,
startAngle: -147.5,
radius: ['98%', '96.5%'],
center: ['50%', '50%'],
z: 1,
label: {
normal: {
show: false
}
},
labelLine: {
normal: {
show: false
}
},
data: Pie2()
}
]
}
return option
}
export function zhkb04() {
const myColor = ['#d0a00e', '#34da62', '#00e9db', '#00c0e9', '#0096f3']
// const data = [330, 404, 780, 509, 150]
const data = [Math.ceil(Math.random() * 100 + 500), Math.ceil(Math.random() * 100 + 600), Math.ceil(Math.random() * 100 + 700), Math.ceil(Math.random() * 400 + 500), Math.ceil(Math.random() * 100 + 200)]
const option = {
backgroundColor: 'transparent',
grid: {
left: '10%',
right: '4%',
bottom: '0%',
top: '5%',
containLabel: true
},
xAxis: [{
show: false
}],
yAxis: [
{
axisTick: 'none',
axisLine: 'none',
offset: '27',
axisLabel: {
textStyle: {
color: function(value, index) {
let temp = ''
myColor.forEach((it, ind) => {
if (index === ind) {
temp = it
}
})
return temp
},
fontSize: 16
}
},
data: ['第四季度订单数', '第三季度订单数', '第二季度订单数', '第一季度订单数', '在制订单数量']
},
{
axisTick: 'none',
axisLine: 'none',
axisLabel: {
textStyle: {
color: function(value, index) {
let temp = ''
myColor.forEach((it, ind) => {
if (index === ind) {
temp = it
}
})
return temp
},
fontSize: 16
}
},
data: data
},
{
show: false,
name: '单位:件',
nameGap: '50',
nameTextStyle: {
color: '#ffffff',
fontSize: '16'
},
axisLine: {
lineStyle: {
color: 'rgba(0,0,0,0)'
}
},
data: []
}
],
series: [
{
name: '条',
type: 'bar',
yAxisIndex: 0,
data: data.map(r => r / 10),
label: {
normal: {
show: false,
position: 'right',
formatter: function(param) {
return param.value + '%'
},
textStyle: {
color: '#ffffff',
fontSize: '16'
}
}
},
barWidth: 12,
itemStyle: {
normal: {
color: function(params) {
var num = myColor.length
return myColor[params.dataIndex % num]
}
}
},
z: 2
},
{
name: '白框',
type: 'bar',
yAxisIndex: 1,
barGap: '-100%',
data: [99.5, 99.5, 99.5, 99.5, 99.5],
barWidth: 20,
itemStyle: {
normal: {
color: '#0e2147',
barBorderRadius: 5
}
},
z: 1
},
{
name: '外框',
type: 'bar',
yAxisIndex: 2,
barGap: '-100%',
data: [100, 100, 100, 100, 100],
barWidth: 24,
itemStyle: {
normal: {
color: function(params) {
var num = myColor.length
return myColor[params.dataIndex % num]
},
barBorderRadius: 5
}
},
z: 0
},
{
name: '外圆',
type: 'scatter',
hoverAnimation: false,
data: [0, 0, 0, 0, 0],
yAxisIndex: 2,
symbolSize: 30,
itemStyle: {
normal: {
color: function(params) {
var num = myColor.length
return myColor[params.dataIndex % num]
},
opacity: 1
}
},
z: 2
}
]
}
return option
}
export function zhkb05() {
// 数据
// var XName = ['周一', '周二', '周三', '周四', '周五', '周六', '周日']
var XName = ['01月', '02月', '03月', '04月', '05月', '06月', '07月', '08月', '09月', '10月', '11月', '12月']
var data1 = [
// [123, 121, 123, 321, 222, 111, 234, 121, 123, 321, 222, 321]
[Math.ceil(Math.random() * 100 + 100), Math.ceil(Math.random() * 100 + 200), Math.ceil(Math.random() * 100 + 200), Math.ceil(Math.random() * 100 + 200), Math.ceil(Math.random() * 100 + 300), Math.ceil(Math.random() * 100 + 100), Math.ceil(Math.random() * 100 + 200), Math.ceil(Math.random() * 100 + 200), Math.ceil(Math.random() * 100 + 300), Math.ceil(Math.random() * 100 + 100), Math.ceil(Math.random() * 100 + 200), Math.ceil(Math.random() * 100 + 300)]
// [123, 154, 234, 321, 120, 390, 634],
// [63, 194, 234, 321, 278, 110, 534],
// [53, 254, 234, 321, 118, 240, 434],
// [23, 354, 334, 221, 178, 190, 234]
]
var Line = ['云篆山水路线', '昕博朗学校路线', '新华小学路线', '云锦五路路线']
var img = [
'image://data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAFAAAABRCAYAAABFTSEIAAAACXBIWXMAAAsSAAALEgHS3X78AAAEp0lEQVR42u3cz4sjRRTA8W9Vd3Vn8mMmjj9WQWSRZQ+CsH+B7MnDIgiCd0E8CYJ/gOAIelo8ehUP/gF6WLw5/gMueFP2sIcF0dHd2Z1kknR11fOQZJJJMtlZd03H7HtQpNOTnpn+8Lrm1etmjIig8e/DKoECKqACKqCGAiqgAiqghgIqoAIqoIYCKqACKqCGAiqgAiqghgIqoAJudKTr+osZMNPvBUQBHwHsPF9fB9R0DeHMOQ6T6WOrhEzXBM4swDOL0M6CrArRVoq3t2dGUIb9fTvatg8ZZup1PDBgzPmy98mey6qfzjLz2WaWjEUZKEvGyi9nWyneMOvGIyFQo2Sbg4MUSChpU9IeTTUpJdsEajPZOJeJG5uBZj7rLLduWS5dGm6XNLEELOFUFj54ACJCaychkpDSASK3bwsXL0YgVpWJKwM0iy9Zy8HdGru7jvt3Pbu7w0wES7drTwAbjTHMGCsQcIAnYTC1/wRx0wEnl27JNgZI8HQ6Kc1mQq83RNzaMjPzXqDbjTQaJRFLxIyyMSxAXEkWrhrQzAAmo5HOjCQf7jflILxOkohL+aUPgV4vEGNJo+E5PAy02+UIMEwBxo0CPDP7Dg5SnEtpt1PA0e87XO25FOoh8IYIH2Y5b45RzGAQBiIltZoHxqMcjbksXAVgdc2EQMYzzzdotyeZWKuleULXJtwT4SODfC2QCWR+IF9KnjuX1Xbo99Op7LVE8iXlz0YBTk5SyLEEjo5OLuccEoFUvHfO+reuUPx4zftXAIcx1hdcF+/TvFab4A0Bs0VwqyhpVnkJT89/Q4DDQ0e77YCMwIUsFMeFZD856699URRvX4nxE4A/jbnxXp7v4Zw3ReGNSDHI8wFQjIafuoyn58L/fB6sth/Ybg9fez2TRC6QZcZYvgHsazF+MP7YCyLXcM7gvSXLDGBqYDg+NhwdmSpPoTrAkub0W+f4FSB1fDucIunMHSLpO8WAH0rSy8u+19MBCHB4OHzd2pI+CEUhpigEiN+l6WcdY252jLn5s7Wf472ImPcN8pUl/tEHoV4XWq1Ke4KrLmPsTA3oODpytFoOyJKSyzHyMSIxteWngMW5cSEdDJQUhTdZVgxOz3/+jFJm4+bA2e5JpNU6WZ4Fw99JwnWMKccwpeddP+B7GZTNUPKqybJy0O+Hs1YfMz9swwvpB8fbGDG0GuGkkK7V0hxSmZQpABI8l2z0v3sJf50qpAMJCd2qCulql3LD1lRGQjm7lEsDz0rkxTQOfiPPxUBcuJTbbhss/Y1eyi3NwsmKInmkZsKk5gtPUzNhvp11507CSy/X6XYStpvFudpZw1ZWIOF4Cq6SdtbKbioJyAhRTu3u9yMJXerN+ugvaQQsjcZ8Q3VnZwxlSDhe1lB9GjrSw5b+1avT8+Jw+979nNaOI6U3KpTrWAosxVQmygK4ld8X0ZtK/7eViExD7O1NQPb3T7fsl4/4sBpwYzPwjFbTo95Yl9l9Vd1YN1X/147HebSjary1AHyc5qc+XLQEQx9ve8Kg6xr6hKoCKqACKqCGAiqgAiqghgIqoAIqoIYCKqACKqCGAiqgAiqghgIq4JrHP8fEWV8FMTmOAAAAAElFTkSuQmCC',
'image://data:image/png;base64,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',
'image://data:image/png;base64,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',
'image://data:image/png;base64,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'
]
// var color = ['#00f8ff', '#00f15a', '#0696f9', '#dcf776']
var color = ['#00f8ff']
// 数据处理
var datas = []
Line.map((item, index) => {
datas.push(
{
symbolSize: 150,
symbol: img[index],
name: item,
type: 'line',
yAxisIndex: 1,
data: data1[index],
itemStyle: {
normal: {
borderWidth: 5,
color: color[index]
}
}
}
)
})
const option = {
backgroundColor: 'transparent',
grid: {
left: '5%',
top: '20%',
bottom: '0%',
right: '5%',
containLabel: true
},
title: {
text: '今年每月订单数量',
x: '50%',
y: '0%',
textAlign: 'center',
textStyle: {
fontSize: 16,
fontWeight: 'normal',
color: '#00FFFF'
}
},
legend: {
show: false,
type: 'scroll',
data: Line,
itemWidth: 18,
itemHeight: 12,
textStyle: {
color: '#00ffff',
fontSize: 14
}
},
yAxis: [
{
type: 'value',
position: 'right',
splitLine: {
show: false
},
axisLine: {
show: false
},
axisTick: {
show: false
},
axisLabel: {
show: false
}
},
{
// show: false,
type: 'value',
position: 'left',
// name: '今年每月订单数量',
nameTextStyle: {
color: '#00FFFF',
fontSize: 16
},
splitNumber: 3,
// nameLocation: 'center',
splitLine: {
lineStyle: {
type: 'dashed',
color: 'rgba(135,140,147,0.8)'
}
},
axisLine: {
show: false
},
axisTick: {
show: false
},
axisLabel: {
formatter: '{value}',
color: '#00FFFF',
fontSize: 14
}
}
],
xAxis: [
{
type: 'category',
axisTick: {
show: false
},
axisLine: {
show: false,
lineStyle: {
color: '#6A989E'
}
},
axisLabel: {
inside: false,
textStyle: {
color: colorX, // x轴颜色
fontWeight: 'normal',
fontSize: 16,
lineHeight: 22
}
},
data: XName
},
{
type: 'category',
axisLine: {
show: false
},
axisTick: {
show: false
},
axisLabel: {
show: false
},
splitArea: {
show: false
},
splitLine: {
show: false
},
// -----
data: ['1月', '2月', '3月', '4月', '5月', '6月']
}
],
series: datas
}
// 当点击legend选项时折线上的小图片会消失,为避免这种情况,可以采取以下初始化方法 使用svg
// var myCharts = echarts.init(document.getElementById('AnalysisChartLine'), null, {renderer: 'svg'});
// myCharts.clear();
// myCharts.setOption(option)
return option
}
export function zhkb06(title) {
const option = {
backgroundColor: 'transparent',
title: [
{
text: title,
x: 'center',
top: '55%',
textStyle: {
color: '#FFFFFF',
fontSize: 14,
fontWeight: 100
}
},
{
text: '95%',
x: 'center',
top: '38%',
textStyle: {
fontSize: 14,
color: '#FFFFFF',
fontFamily: 'DINAlternate-Bold, DINAlternate',
foontWeight: 100
}
}
],
grid: {
left: '0%',
top: '0%',
bottom: '0%',
right: '0%',
containLabel: true
},
angleAxis: {
max: 100,
clockwise: false, // 逆时针
// 隐藏刻度线
show: false,
boundaryGap: ['40%', '40%'],
startAngle: 90
},
radiusAxis: {
type: 'category',
show: true,
axisLabel: {
show: false
},
axisLine: {
show: false
},
axisTick: {
show: false
}
},
polar: [
{
center: ['50%', '50%'], // 中心点位置
radius: '165%' // 图形大小
}
],
series: [
{
name: '齿轮',
type: 'gauge',
splitNumber: 60,
radius: '132%',
center: ['50%', '50%'],
startAngle: 90,
endAngle: -269.9999,
axisLine: {
show: false,
lineStyle: {
color: [[0.3, '#26a7d4'], [1, '#23395a']]
}
},
axisTick: {
show: false
},
splitLine: {
show: true,
length: 8,
lineStyle: {
color: 'auto',
width: 2.5
}
},
axisLabel: {
show: false
},
detail: {
show: false
}
},
{
type: 'bar',
z: 10,
data: [75],
showBackground: false,
backgroundStyle: {
color: 'blue',
borderWidth: 4,
width: 4
},
coordinateSystem: 'polar',
roundCap: true,
barWidth: 6, // 大的占比环
itemStyle: {
normal: {
opacity: 1,
color: new echarts.graphic.LinearGradient(0, 0, 1, 1, [
{
offset: 0,
color: '#00FFFF'
},
{
offset: 1,
color: '#09d8f2'
}
])
}
}
},
{
type: 'pie',
name: '内层细圆环',
radius: ['82%', '83%'],
startAngle: 110,
hoverAnimation: false,
clockWise: true,
itemStyle: {
normal: {
color: new echarts.graphic.LinearGradient(0, 0, 1, 1, [
{
offset: 0,
color: 'rgba(151,179,166,0.74)'
},
{
offset: 1,
color: 'rgba(151,179,166,0.74)'
}
]),
shadowBlur: 20,
shadowColor: '#66666a'
}
},
tooltip: {
show: false
},
label: {
show: false
},
data: [100]
}
]
}
return option
}
export function zhkb07(title, value) {
const dataArr = [
{
value: value,
name: title
}
]
const color = new echarts.graphic.LinearGradient(0, 0, 1, 0, [
{
offset: 0,
color: '#1f79b6' // 0% 处的颜色
},
{
offset: 1,
color: '#0dd2db' // 100% 处的颜色
}
])
const colorSet = [
[value / 100, color],
[1, '#15337C']
]
const rich = {
white: {
fontSize: 14,
color: '#fff',
fontWeight: '500'
},
bule: {
fontSize: 14,
fontFamily: 'DINBold',
color: '#fff',
fontWeight: 100
},
radius: {
width: 350,
height: 80,
// lineHeight:80,
borderWidth: 1,
borderColor: '#0092F2',
fontSize: 14,
color: '#fff',
backgroundColor: '#1B215B',
borderRadius: 20,
textAlign: 'center'
},
size: {
height: 400,
padding: [100, 0, 0, 0]
}
}
const option = {
backgroundColor: 'transparent',
tooltip: {
formatter: '{a}
{b} : {c}%'
},
series: [
{
type: 'gauge',
radius: '90%',
startAngle: '225',
endAngle: '-45',
pointer: {
show: false
},
detail: {
formatter: function(value) {
var num = Math.round(value)
return '{bule|' + num + '}{white|%}'
},
rich: rich,
offsetCenter: ['0%', '0%']
},
data: dataArr,
title: {
show: true,
color: '#fff',
offsetCenter: ['0', '75%'],
fontSize: 14
},
axisLine: {
show: true,
lineStyle: {
color: colorSet,
width: 12,
shadowOffsetX: 0,
shadowOffsetY: 0,
opacity: 1
}
},
axisTick: {
show: false
},
splitLine: {
show: false,
length: 10,
lineStyle: {
color: '#00377a',
width: 2,
type: 'solid'
}
},
axisLabel: {
show: false
}
}
]
}
return option
}
export function zhkb08() {
const data = [
{
name: '钢材改制车间',
value: Math.floor(Math.random() * 10 + 90)
},
{
name: '冷墩车间',
value: Math.floor(Math.random() * 10 + 90)
},
{
name: '热墩车间',
value: Math.floor(Math.random() * 10 + 90)
},
{
name: '热处理车间',
value: Math.floor(Math.random() * 10 + 90)
},
{
name: '达克罗车间',
value: Math.floor(Math.random() * 10 + 90)
},
{
name: '镀锌车间',
value: Math.floor(Math.random() * 10 + 90)
}
]
const myColor = ['#d0a00e', '#34da62', '#00e9db', '#00c0e9', '#0096f3', '#ff00ff']
const getArrByKey = (data, k) => {
const key = k || 'value'
const res = []
if (data) {
data.forEach(function(t) {
res.push(t[key])
})
}
return res
}
const getSymbolData = (data) => {
const arr = []
for (var i = 0; i < data.length; i++) {
arr.push({
value: data[i].value,
symbolPosition: 'end'
})
}
return arr
}
// console.log(getSymbolData(data));
const option = {
backgroundColor: 'transparent',
grid: {
left: '0%',
right: '0%',
bottom: '0%',
top: '15%',
containLabel: true
},
title: {
text: '九月能耗用量',
x: '44%',
y: '0%',
textStyle: {
color: '#09d8f2',
fontSize: 16
}
// subtextStyle: {
// color: '#90979c',
// fontSize: '16'
// }
},
xAxis: {
show: false
},
yAxis: [
{
triggerEvent: true,
show: true,
inverse: true,
data: getArrByKey(data, 'name'),
axisLine: {
show: false
},
splitLine: {
show: false
},
axisTick: {
show: false
},
axisLabel: {
show: true,
interval: 0,
// color: colorY,
align: 'left',
margin: 30,
textStyle: {
color: function(value, index) {
let temp = ''
myColor.forEach((it, ind) => {
if (index === ind) {
temp = it
}
})
return temp
},
fontSize: 16,
align: 'right'
// width: 36
}
// formatter: function(value, index) {
// return '{title|' + value + '}'
// },
// rich: {
// title: {
// width: 36,
// align: 'right',
// fontSize: 16
// }
// }
}
},
{
triggerEvent: true,
show: true,
inverse: true,
data: getArrByKey(data, 'name'),
axisLine: {
show: false
},
splitLine: {
show: false
},
axisTick: {
show: false
},
axisLabel: {
interval: 0,
shadowOffsetX: '-20px',
// color: colorX,
color: function(value, index) {
let temp = ''
myColor.forEach((it, ind) => {
if (index === ind) {
temp = it
}
})
return temp
},
align: 'left',
verticalAlign: 'center',
lineHeight: 40,
fontSize: 16,
margin: 20,
formatter: function(value, index) {
// return data[index].value + '%'
return data[index].value + '吨'
}
}
}],
series: [
{
name: 'XXX',
type: 'pictorialBar',
symbol: 'image://data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADoAAAA6CAMAAADWZboaAAAAZlBMVEUAAABe3uVe3+Vf3uVf3+Zf3uVg3+Zg3+Zf3+Vi4OZh4OZg3+Z86/Bh3+Zi4Odj4Odi4OZ86/B76/B86/Bj4ed56+9x5+xn4umB7/N87PB36e+A7/N+7fF/7vJ/7vJ+7fGA7/OB7/PReX+lAAAAIXRSTlMABQkVDREmIhk3MR10LEFFPHh7cUprXE35h2XnqMLAp+mHAG9cAAAB5ElEQVRIx83WjU7CMBQFYIoiKMqU/XUboHv/l/Tce7t2XamDNSacETEmX86tlK2rx4py150o+MstMBLwWRfHKo6JCVxLnvmFGBjFQ58oF1//sUZhGy/ClSTWObgnL4O+bkeN4nY2okfNMbkRt9/vtxz8InoTsWplJSCzFxPmO8+GpSIByX3YQAuGDWtRKhKjCnxDXhF6Z4yxnZ20Wgko7BMRDmxtSGVaI4kdTIgb+zTYoJQlIMlDlmUFgrcDWWC201qSayqlTkiCddWWeV62VU0YlnpRi9VOKaSUsiyq/N0krwq2Ugt7lVpZl5BfHNiytjagMi+XYp0kCR45hMlivVQrE/uU5pXSrCB5bM6d1t2lOZItMqmliT3q5uVxqxzyW/ccfYLNKx7ZTeykMvNyac2yt2Fbc61MHLSC0rwoxbiNdlQ3GBm1NLHQsHUrtEXppR/ljNpW6DbSCoqlFiVoN6YdaFlgsSFVPs1BdT8OaB5QyQzVcaqWDows/zepxR8ObLglTrdtCRVuRNj4Rrxh+//0ke2f8KVL+Kon3GCSbmsJN9OUW3j6g0Ns+LgCij2u0h+Sghc8mlMPBMgdx5DFh59VmOVHrvmDnoNxCz3J7MFWsMuaLyR089xz/xhlfijvwutR8gv3zk6BLUUeCgAAAABJRU5ErkJggg==',
symbolSize: [50, 50],
symbolOffset: [20, 0],
z: 12,
itemStyle: {
normal: {
color: '#fff'
}
},
data: getSymbolData(data)
},
{
name: '条',
type: 'bar',
showBackground: true,
yAxisIndex: 0,
data: data,
barWidth: 10,
// align: left,
itemStyle: {
normal: {
color: function(params) {
return myColor[params.dataIndex]
},
barBorderRadius: 10
}
}
// label: {
// normal: {
// color: '#fff',
// show: true,
// position: ["-80px", 0],
// textStyle: {
// fontSize: 16
// },
// formatter: function(a, b) {
// return a.name
// }
// }
// }
}]
}
return option
}
// 暂时弃用
export function zhkb092222() {
const data = [220, 182, 191, 234, 290, 330, 310, 182, 191, 234, 290, 330]
const sideData = data.map(item => item + 4.5)
const option = {
backgroundColor: 'transparent',
// tooltip: {
// trigger: 'axis',
// formatter: '{b} : {c}',
// axisPointer: { // 坐标轴指示器,坐标轴触发有效
// type: 'shadow' // 默认为直线,可选为:'line' | 'shadow'
// }
// },
grid: {
left: '2%',
right: '2%',
bottom: '2%',
top: '15%',
containLabel: true
},
title: {
text: '近一年每月能耗使用',
x: '40%',
y: '0%',
textStyle: {
color: '#09d8f2',
fontSize: 16
}
// subtextStyle: {
// color: '#90979c',
// fontSize: '16'
// }
},
xAxis: {
data: ['01月', '02月', '03月', '04月', '05月', '06月', '07月', '08月', '09月', '10月', '11月', '12月'],
// 坐标轴
axisLine: {
lineStyle: {
color: '#3eb2e8'
}
},
// 坐标值标注
axisLabel: {
show: true,
textStyle: {
color: colorX,
fontSize: 14
}
}
},
yAxis: {
// 坐标轴
axisLine: {
show: false
},
// 坐标值标注
axisLabel: {
show: true,
textStyle: {
color: '#09d8f2',
fontSize: 14
}
},
// 分格线
splitLine: {
lineStyle: {
type: 'dashed',
color: 'rgba(135,140,147,0.8)'
}
},
splitNumber: 3
},
series: [
{
name: 'a',
tooltip: {
show: false
},
type: 'bar',
barWidth: 18,
itemStyle: {
normal: {
color: new echarts.graphic.LinearGradient(0, 1, 0, 0, [{
offset: 0,
color: '#0B4EC3' // 0% 处的颜色
}, {
offset: 0.6,
color: '#138CEB' // 60% 处的颜色
}, {
offset: 1,
color: '#17AAFE' // 100% 处的颜色
}], false)
}
},
data: data,
barGap: 0
},
{
type: 'bar',
barWidth: 8,
itemStyle: {
normal: {
color: new echarts.graphic.LinearGradient(0, 1, 0, 0, [{
offset: 0,
color: '#09337C' // 0% 处的颜色
}, {
offset: 0.6,
color: '#0761C0' // 60% 处的颜色
}, {
offset: 1,
color: '#0575DE' // 100% 处的颜色
}], false)
}
},
barGap: 0,
data: sideData
},
{
name: 'b',
tooltip: {
show: false
},
type: 'pictorialBar',
itemStyle: {
borderWidth: 1,
borderColor: '#0571D5',
color: '#1779E0'
},
symbol: 'path://M 0,0 l 120,0 l -30,60 l -120,0 z',
symbolSize: ['30', '6'],
symbolOffset: ['0', '-4'],
// symbolRotate: -5,
symbolPosition: 'end',
data: data,
z: 3
}
]
}
return option
}
export function zhkb09() {
// const dataY = [60, 70, 80, 90, 60, 70, 80, 90, 80, 90, 60, 70, 80, 90]
const dataY = [(80 + Math.random() * 10), (90 - Math.random() * 30), (60 + Math.random() * 30), (70 + Math.random() * 20), (80 + Math.random() * 10), (90 - Math.random() * 30), (80 - Math.random() * 30), (90 - Math.random() * 30), (60 + Math.random() * 30), (70 + Math.random() * 20), (80 - Math.random() * 10), (90 - Math.random() * 30)]
const option = {
backgroundColor: 'transparent',
grid: {
left: '2%',
right: '2%',
bottom: '2%',
top: '15%',
containLabel: true
},
title: {
text: '近一年每月能耗使用',
x: '40%',
y: '0%',
textStyle: {
color: '#09d8f2',
fontSize: 16
}
},
color: ['#3cefff'],
tooltip: {},
xAxis: [
{
type: 'category',
data: ['01月', '02月', '03月', '04月', '05月', '06月', '07月', '08月', '09月', '10月', '11月', '12月'],
axisTick: {
alignWithLabel: true
},
nameTextStyle: {
color: '#82b0ec'
},
axisLine: {
lineStyle: {
color: '#82b0ec'
}
},
axisLabel: {
margin: 20,
textStyle: {
// color: '#82b0ec'
color: colorX,
fontSize: 14
}
}
}
],
yAxis: [
{
type: 'value',
axisLabel: {
textStyle: {
color: '#09d8f2',
fontSize: 14
}
// formatter: '{value}%'
},
splitLine: {
lineStyle: {
type: 'dashed',
color: 'rgba(135,140,147,0.8)'
}
},
axisLine: {
show: false
}
}
],
series: [
{
name: '',
type: 'pictorialBar',
symbolSize: [20, 10],
symbolOffset: [0, -5],
symbolPosition: 'end',
z: 12,
label: {
normal: {
show: false,
position: 'top',
formatter: '{c}%'
}
},
data: dataY
},
{
name: '',
type: 'pictorialBar',
symbolSize: [20, 10],
symbolOffset: [0, 5],
z: 12,
data: dataY
},
{
type: 'bar',
itemStyle: {
normal: {
opacity: 0.7
}
},
barWidth: '20',
data: dataY
// markLine: {
// silent: true,
// label: {
// position: 'middle',
// formatter: '{b}',
// color: 'red'
// },
// data: [
// {
// name: '目标值',
// yAxis: 80,
// lineStyle: {
// color: 'red'
// },
// itemStyle: {
// color: 'red'
// },
// label: {
// position: 'end',
// formatter: '{b}\n {c}%'
// }
// }
// ]
// }
},
{
type: 'effectScatter',
silent: true,
tooltip: {
show: false
},
zlevel: 3,
symbolSize: 10,
showEffectOn: 'render',
rippleEffect: {
brushType: 'stroke',
color: '#3cefff',
scale: 5
},
itemStyle: {
color: '#3cefff'
},
hoverAnimation: true,
data: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
}
]
}
return option
}
export function zhkb10() {
const _legendColor = '#8FD8FF'
const _fontSize = 16
const _fontColor = '#8FD8FF'
// const data1 = [70, 90, 100, 70, 90, 100]
// const data2 = [80, 60, 80, 50, 90, 60]
const data1 = [70 + Math.random() * 20, 90 - Math.random() * 20, 100 - Math.random() * 20, 70 + Math.random() * 20, 90 - Math.random() * 20, 80 - Math.random() * 20]
const data2 = [80 + Math.random() * 20, 60 + Math.random() * 20, 80 - Math.random() * 20, 50 + Math.random() * 20, 90 - Math.random() * 20, 60 + Math.random() * 20]
const option = {
backgroundColor: 'transparent',
legend: {
x: 'right',
y: '2%',
itemWidth: 10,
itemHeight: 10,
textStyle: {
fontSize: 16,
color: 'rgba(255,255,255,.7)'
}
},
grid: {
left: '2%',
top: '7%',
right: '2%',
bottom: '0%',
containLabel: true
},
yAxis: {
// max: Math.ceil(Math.max(...data1) * 1.2),
max: 100,
type: 'value',
position: 'left',
axisLine: {
show: true,
lineStyle: {
color: '#4E84AC'
}
},
axisTick: {
show: false
},
axisLabel: {
formatter: '{value}',
color: '#00FFFF',
fontSize: 14
},
splitLine: {
show: false
}
},
xAxis: {
type: 'category',
nameTextStyle: {
fontSize: 16,
color: '#7dd6ea'
},
axisLabel: {
show: true,
interval: 0,
// margin: 20,
textStyle: {
color: colorX,
fontSize: 16
}
},
splitLine: {
show: false
},
axisTick: {
show: false
},
axisLine: {
show: true,
lineStyle: {
color: '#4E84AC'
// width: 3
}
},
data: ['钢材改制', '冷墩', '热墩', '热处理', '达克罗', '镀锌']
},
series: [
{
name: '人员分析1',
type: 'bar',
barWidth: 15,
barGap: '30%',
itemStyle: {
normal: {
color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [
{
offset: 0,
color: 'rgba(0,234,255, 1)'
},
{
offset: 1,
color: 'rgba(0,234,255, .1)'
}
])
}
},
// label: {
// show: true,
// position: 'top',
// textStyle: {
// fontSize: 36,
// color: '#00EAFF'
// },
// formatter: function(params) {
// return params.value + '%'
// }
// },
data: data1,
z: 10,
zlevel: 0
},
{
// 分隔
type: 'pictorialBar',
itemStyle: {
normal: {
color: '#0F375F'
}
},
symbolRepeat: 'fixed',
symbolMargin: 15,
symbol: 'rect',
symbolClip: true,
symbolSize: [15, 2],
symbolPosition: 'start',
symbolOffset: [-10, 0],
data: data1,
width: 2,
z: 0,
zlevel: 1
},
{
name: '人员分析2',
type: 'bar',
barWidth: 15,
itemStyle: {
normal: {
color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [
{
offset: 0,
color: 'rgba(252,160,0, 1)'
},
{
offset: 1,
color: 'rgba(252,160,0, .1)'
}
])
}
},
// label: {
// show: true,
// position: 'top',
// textStyle: {
// fontSize: 16,
// color: '#FFA200'
// },
// formatter: function(params) {
// return params.value + '%'
// }
// },
data: data2,
z: 10,
zlevel: 0
},
{
// 分隔
type: 'pictorialBar',
itemStyle: {
normal: {
color: '#0F375F'
}
},
symbolRepeat: 'fixed',
symbolMargin: 15,
symbol: 'rect',
symbolClip: true,
symbolSize: [15, 2],
symbolPosition: 'start',
symbolOffset: [10, 0],
data: data2,
width: 2,
z: 0,
zlevel: 1
}
]
}
return option
}
export function zhkb11() {
const option = {
backgroundColor: 'transparent',
// title: {
// text: '时段-进出港流量',
// left: '5%',
// top: '5%',
// textStyle: {
// color: '#fff',
// fontSize: '18px'
// }
// },
tooltip: {
trigger: 'axis',
axisPointer: {
type: 'shadow'
}
},
legend: [
{
icon: 'react',
right: '0%',
top: '0%',
textStyle: {
color: '#fff',
fontSize: 14
},
itemGap: 30,
itemWidth: 30,
itemHeight: 4,
data: ['设备利用率', '设备开机率']
}
],
grid: {
top: '10%',
right: '5%',
left: '1%',
bottom: '0%',
containLabel: true
},
yAxis: [
{
type: 'category',
data: ['冷镦车间', '热墩车间', '达克罗车间', '磷化车间', '注塑车间'],
axisLine: {
lineStyle: {
color: '#4E84AC'
// width: 2
}
},
axisTick: {
show: false
},
axisLabel: {
// margin: 10,
color: '#09d8f2',
textStyle: {
fontSize: 16
}
}
}
],
xAxis: [
{
axisLabel: {
formatter: '{value}',
color: '#6895CA',
textStyle: {
fontSize: 16,
color: colorX
}
},
axisLine: {
show: true,
lineStyle: {
width: 2,
color: '#4E84AC'
}
},
axisTick: {
show: false
},
splitLine: {
lineStyle: {
type: 'dashed',
// 使用深浅的间隔色
color: '#184D9A'
}
}
}
],
series: [
{
name: '设备利用率',
type: 'bar',
barGap: '70%',
data: [Math.ceil(30 + Math.random() * 20), Math.ceil(75 - Math.random() * 20), Math.ceil(77 - Math.random() * 20), Math.ceil(39 + Math.random() * 20), Math.ceil(85 - Math.random() * 20)],
barWidth: 12,
itemStyle: {
normal: {
color: {
type: 'linear',
x: 0,
y: 0,
x2: 1,
y2: 0,
colorStops: [
{
offset: 0,
color: '#00FFFF' // 0% 处的颜色
},
{
offset: 1,
color: '#00FF00' // 100% 处的颜色
}
],
global: false // 缺省为 false
},
barBorderRadius: [30, 30, 30, 30],
shadowColor: 'rgba(0,160,221,1)',
shadowBlur: 4
}
},
label: {
normal: {
show: true,
// lineHeight: 20,
// width: 80,
// height: 20,
verticalAlign: 'center',
borderRadius: 200,
position: 'right',
color: '#00FF00',
fontSize: 16
}
}
},
{
name: '设备开机率',
type: 'bar',
data: [Math.ceil(90 - Math.random() * 20), 45 + Math.ceil(Math.random() * 20), Math.ceil(27 + Math.random() * 20), Math.ceil(20 + Math.random() * 60), Math.ceil(85 - Math.random() * 20)],
barWidth: 12,
itemStyle: {
normal: {
color: {
type: 'linear',
x: 0,
y: 0,
x2: 1,
y2: 0,
colorStops: [
{
offset: 0,
color: '#00FFFF' // 0% 处的颜色
},
{
offset: 1,
color: '#FFFF00' // 100% 处的颜色
}
],
global: false // 缺省为 false
},
barBorderRadius: [30, 30, 30, 30],
shadowColor: 'rgba(0,160,221,1)',
shadowBlur: 4
}
},
label: {
normal: {
show: true,
// lineHeight: 20,
// width: 80,
// height: 20,
borderRadius: 200,
verticalAlign: 'center',
// position: ['-0', '-20'],
position: 'right',
color: '#FFFF00',
fontSize: 16
}
}
}
]
}
return option
}
export function zhkb12() {
}
export function echart01() {
return {
// title: {
// text: '2019年销售水量和主营业务收入对比',
// textStyle: {
// align: 'center',
// color: '#fff',
// fontSize: 20
// },
// top: '3%',
// left: '10%'
// },
backgroundColor: 'transparent',
grid: {
left: '5%',
right: '5%',
bottom: '5%',
top: '30%',
containLabel: true
},
tooltip: {
trigger: 'axis',
axisPointer: {
type: 'shadow',
label: {
show: true
}
}
},
legend: {
data: ['成本', '效益'],
top: '15%',
textStyle: {
color: '#ffffff'
}
},
xAxis: [
{
type: 'category',
data: ['01月', '02月', '03月', '04月', '05月', '06月', '07月', '08月', '09月', '10月', '11月', '12月'],
axisTick: {
alignWithLabel: true
},
nameTextStyle: {
color: '#82b0ec'
},
axisLine: {
lineStyle: {
color: '#82b0ec'
}
},
axisLabel: {
// margin: 5,
textStyle: {
// color: '#82b0ec'
color: colorX,
fontSize: 10
}
}
}
],
yAxis: [
// {
// type: 'value',
// name: '亿元',
// nameTextStyle: {
// color: '#ebf8ac'
// },
// splitLine: {
// show: false
// },
// axisTick: {
// show: true
// },
// axisLine: {
// show: true,
// lineStyle: {
// color: '#FFFFFF'
// }
// },
// axisLabel: {
// show: true,
// textStyle: {
// color: '#ebf8ac'
// }
// }
//
// },
{
type: 'value',
gridIndex: 0,
min: 0,
max: 100,
splitNumber: 8,
splitLine: {
show: false
},
axisLine: {
show: false
},
axisTick: {
show: false
},
axisLabel: {
show: false
},
splitArea: {
show: true,
areaStyle: {
color: ['rgba(250,250,250,0.0)', 'rgba(250,250,250,0.05)']
}
}
},
{
type: 'value',
name: '',
nameTextStyle: {
color: '#ebf8ac'
},
position: 'left',
splitLine: {
show: false
},
axisTick: {
show: false
},
axisLine: {
show: false
},
axisLabel: {
show: true,
formatter: '{value} %', // 右侧Y轴文字显示
textStyle: {
color: colorX
}
}
}
],
series: [
{
name: '成本',
type: 'line',
yAxisIndex: 1, // 使用的 y 轴的 index,在单个图表实例中存在多个 y轴的时候有用
smooth: true, // 平滑曲线显示
showAllSymbol: true, // 显示所有图形。
// symbol: 'circle', // 标记的图形为实心圆
symbolSize: 5, // 标记的大小
itemStyle: {
// 折线拐点标志的样式
color: '#058cff'
},
lineStyle: {
color: '#058cff'
},
areaStyle: {
color: 'rgba(5,140,255, 0.2)'
},
// data: [4.2, 3.8, 4.8, 3.5, 2.9, 2.8, 3, 5, 2.9, 2.8, 3, 5]
data: [100, 98, 99, 100, 100, 99, 98, 96, 97, 100, 100, 99]
},
{
name: '效益',
type: 'bar',
barWidth: 15,
itemStyle: {
normal: {
color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [{
offset: 0,
color: '#00FFE3'
},
{
offset: 1,
color: '#4693EC'
}
])
}
},
data: [28, 60, 30, 35, 27, 28, 33, 50, 29, 28, 36, 5]
// data: [100, 98, 99, 100, 100, 99, 98, 96, 97, 100, 100, 99]
}
]
}
}
export function echart02() {
var img = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAMYAAADGCAYAAACJm/9dAAABS2lUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4KPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS42LWMxMzggNzkuMTU5ODI0LCAyMDE2LzA5LzE0LTAxOjA5OjAxICAgICAgICAiPgogPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4KICA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIi8+CiA8L3JkZjpSREY+CjwveDp4bXBtZXRhPgo8P3hwYWNrZXQgZW5kPSJyIj8+IEmuOgAAE/9JREFUeJztnXmQVeWZxn/dIA2UgsriGmNNrEQNTqSio0IEFXeFkqi4kpngEhXjqMm4MIldkrE1bnGIMmPcUkOiIi6gJIragLKI0Songo5ZJlHGFTADaoRuhZ4/nnPmnO4+l+7bfc85d3l+VV18373n3Ptyvve53/5+da1L6jDdYjgwBhgNHALMBn6Sq0VdcxlwGvACsAx4HliTq0VlRlNzY+LrfTO2o5LoDxwOHAmMA/4WiP+KzM3DqCJpAA4K/i4F2oBXgWbgWWAxsDEv48oZC6M9Q4EJwInAMcDAfM0pOXXA14K/y4FPgQXAfOBxYF1+ppUXFgYMBiYCp6PaoU+B694HFqEmyVJgVSbW9Y6bgCeBb6Am4GHALrH3B6L/+0RgM6pFHgQeAzZkaWi5UVejfYx64AjgXOAk1OToSCtqajyFHGZlVsalzH7oB+BYJJR+Cde0oKbi3cBCYEtWxmVNoT5GrQljGHAecD7wxYT3P0bNirlIEB9lZ1ouDEICOQk1H7dLuOYt4C7gZ8Da7EzLhloXxv7AJcCZdK4dWpAIHkDt7FrtjA5A/aszkFiSntP9wAzgP7M1LT0KCaM+YzuyZixy+leAb9O+sN9AHdDd0S/mbGpXFKD/+2z0LHZHz+aN2PsN6Bm+gjrsY7M2MEuqVRhHoU7yYjS6FPI5MAc4FNgHzUN4JKYz69Cz2Qc9qzno2YUcjZ7t8iBddVSbMEYDzwFPA6Nir28Afgx8CZiERpVM91iKntnfoGcYH606BNUez6GRr6qhWoSxF/AoKsQxsdfXAj9AHe2rgNXZm1Y1/A96hl8E/pn2HfExwBJUBntlb1rpqXRhbA/cDLyGxuJDPgSuBPYErqPGx+RLzAagCT3bK9GzDpmIyuJmVDYVS6UKow74e+APwPeIxuI/AX6Emkw3opldkw6fome8F3rmnwSv90Nl8gdURhU57FmJwtgHdfx+jpZwgCag7gW+DFyDa4gsWY+e+ZdRGYSTgUNRGS1GZVZRVJIwtgF+iMbQ4/2IF4ADgHOA93Kwy4j3UBkcgMokZAwqsx+iMqwIKkUYI4AXgelEzab1wAVoNOSVnOwynXkFlckFqIxAZTYdleGInOwqinIXRh1wMfASMDL2+hxgb+BOqngdTwWzBZXN3qisQkaisryYMu97lLMwhgHzgJ+ivRGgIcJJwd8HOdllus8HROUVDu/2R2U6D5VxWVKuwjgEVcnjY689jqrhOYl3mHJmDiq7x2OvjUdlfEguFnVBOQrju2gmdbcgvwmYitbweFtm5bIGleFUVKagMn4OlXlZUU7C6A/MQqs3w9GLN4ADgZloW6apbNpQWR5ItEBxG1Tms4iazLlTLsLYCW2IOTv22iNor3Il7JQzxbEKle0jsdfORj6wUy4WdaAchDEC+A1RW3MzcAVwKtW/UaiW+QiV8RWozEE+8Bu0yzBX8hbGwaiNuUeQ/xi1Q2/CTadaoA2V9Umo7EG+8Dw57/fIUxhHAs8AOwb5t9Cy8fm5WWTyYj4q+7eC/PZoOfspeRmUlzBOBn4FbBvkX0XVaLUEHDDFsxL5wG+DfAOKWHJOHsbkIYwpaAtluLRjEdol5nVO5j20tmpRkO+DAjFclLUhWQvjUhSSJYzdNA84DneyTcRHyCfmBfk64HYUbjQzshTGVOBWojUys9GoREuGNpjKoAX5xuwgXwfcQoY1R1bCmILWx4SimAWcBXyW0febyuMz5COzgnxYc0zJ4suzEMZEFKwrFMVDKAzL5oJ3GCM2I195KMjXIV86Ke0vTlsYR6CRhbBPMReYjEVhus9mNCseRpfvg5pYR6T5pWkKYz8UNSIcfVqIzmpoTfE7TXXyGfKdhUG+H/Kt1GbI0xLGMODXKJI4aIz6m1gUpue0Ih8Kw4MORj6Wyp6ONITRADyBwjyC4hEdjwMUmN6zAUU+fDPI7458LSlafa9IQxh3oZWToP/ICcDbKXyPqU3WouDT4Q/tQcjnSkqphXEJ6lyDOk2T8TIPU3pW0n4QZzLyvZJRSmGMQislQ65C1ZwxafAEioQYchPt4xX3ilIJYygaaw5HoB5BM5XGpMmtwMNBuh/ywaGFL+8+pRBGHYpAF+7R/h2anfR+CpM2bWj1bbhNdjfki70OzVMKYVxEFM1jE955Z7Il3AkYHvoznhKsqeqtML6KIluHfB93tk32rEK+F3Iz8s0e0xth9EXVVhjZ4QkUAcKYPPg3orhV/YH76MVx3b0RxhXA3wXpdehoYPcrTF60oRN5w6PjDkQ+2iN6Kox9UOj3kAtxMDSTP2uQL4ZcA+zbkw/qiTDqULUVTsM/RDRkZkzePEy0TL0B+WrRo1Q9Eca3iEKbrKfEM47GlIBLgP8N0mPQyU5FUawwdqDz7Lajjpty4wPg6lj+RqIwTd2iWGE0Ei3zXUEKi7eMKRF3IR8F+ew1W7m2E8UI4ytEEydbUIRqH9piypWOPnoR8uFuUYwwbiKKQj4LeLmIe43Jg5eJgilsQ/tuwFbprjBGEy37+IT27TdjypmriY5aHo/OB+yS7grjulj6JzhqoKkc3gNui+X/pTs3dUcYRxMNz/4FLyc3lcfNyHdBvnxMVzd0RxiNsfQNeO+2qTw2IN8N6XKEqithjCXaFbUWuKNndhmTOzOJ1lGNoovzN7oSxrRY+jbg057bZUyu/BX1j0OmFboQti6Mkah/AVr64SXlptKZiXwZ5NsjC124NWFcGkvfHftAYyqV9bRfrXFpoQvrWpckLjwcigKl9Qc+B74ErC6hgcbkxR7Af6NNTK3Abk3Njes6XlSoxvgO0c68R7EoTPWwGvk0KLLIBUkXJQmjHu3GC5lRWruMyZ24T58zbdy1nXSQJIxxwJ5B+nVgWentMiZXliHfBvn6kR0vSBJG/JTMu0tvkzFlQdy3O53S1LHzPRht8mhA56DtTjQpYkw1MQR4h8jXd25qbvz/kdeONcZEor3cT2FRmOrlQ3S+Bsjn2x1f1lEYZ8TSD6RolDHlwP2x9JnxN+JNqWHAu2h892NgZ7wExFQ3A4H3ge3QkQK7NjU3roH2NcaJRJHb5mNRmOrnU+TroEMvw8147YQxIZaeizG1QdzXTwwTYVNqAOpoD0Q99GGoOWVMtTMIRTBsQBHThzQ1N24Ma4zDkCgAFmNRmBqhqbnxI+C5IDsAOByiplR85m9BhnYZUw48FUsfCcnCeCYzc4wpD+I+Pw7UxxiOhqzq0HDtbgk3GlOVNDUrpMG0cde+A+yKjhPYuR7F2QknM57PxTpj8ifsZ9QBh9ajYGohS7O3x5iyIL6KfFQ9cHDsBQvD1Cpx3z+4LzAHnV3Whg75M6YWWQVciZpSrYX2fBtTE4Sd746U4pxvY6oOC8OYBCwMYxKwMIxJwMIwJgELw5gELAxjErAwjEnAwjAmAQvDmAQsDGMSsDCMScDCMCYBC8OYBCwMYxKwMIxJwMIwJgELw5gELAxjErAwjEnAwjAmAQvDmAQsDGMSsDCMScDCMCYBC8OYBCwMYxKwMIxJwMIwJgELw5gELAxjErAwjEnAwjAmAQvDmAQsDGMSsDCMScDCMCYBC8OYBCwMYxLoC1wKNABtwC3A5lwtMiYHpo27tg/wPaAOaO0LnAqMCt5fAPw2J9uMyZMRwI+D9PJ6YEXszW9kb48xZUHc91fUA8sKvGlMLTE6ll5eDyxF/QuAMdnbY0xZMDb4tw1YUg+sAVYGL+6K2lrG1AzTxl07Avk+wMqm5sY14XBtc+y6o7I1y5jcift8M0TzGM/E3jgmM3OMKQ+OjaWfBahrXVIHMABYBwwEWoBhwMdZW2dMDgxC3YkGYCMwpKm5cWNYY2wEng7SDcBx2dtnTC4ci3weYEFTc+NGaL8k5IlY+qSsrDImZ+K+/qsw0VEYnwfpE1GzyphqZgDyddBSqMfDN+LCWAssCtLbAeMzMc2Y/DgB+TrAwqbmxjXhGx1X194fS5+WtlXG5MyZsfQD8Tc6CmMuGpUCOB4YkqJRxuTJEOTjIJ9/LP5mR2GsR+IA9dS/lappxuTHZKLRqLlNzY3r428mbVS6N5Y+Ny2rjMmZuG/f2/HNJGE8C7wZpPel/apDY6qB0cBXg/SbBLPdcZKEsQW4J5a/pORmGZMvcZ++p6m5cUvHCwrt+f53ok74N4E9SmyYMXmxB/JpgFbk650oJIx1wOwg3Rf4bklNMyY/LkY+DfBgU3PjuqSLthYl5LZY+lxg+xIZZkxeDAbOi+VvK3Th1oTxCtHCwu2BC3tvlzG5chHRD/wzyMcT6SquVFMsfRleP2Uql4HIh0Ou39rFXQnjOWB5kB4GTO25XcbkylTkwyCfXrSVa7sViXB6LH0VaqcZU0kMRr4b8qOubuiOMBagmgNgR+Dy4u0yJle+j3wX5MtPdXVDd2PX/iCWvhzYpTi7jMmNXVAY2pAfFLowTneFsZRoh9+2dNFxMaaMuB75LMiHl3bnpmKinf8T8FmQngwcUMS9xuTBAchXQb57RXdvLEYYvwNmxu77aZH3G5MlHX10JvBGMTcXw3S0BRbgYNrPIhpTTpyHfBS0xGn6Vq7tRLHC+AtqUoVcD+xU5GcYkzbDad8PvgL5brfpSVPoP4iGb3cA/rUHn2FMmsxAvgnwPPDzYj+gJ8JoQ+umwmXppwGn9OBzjEmDU4gCebQgX20rfHkyPe08/xft22wzUfVlTJ4MB+6I5acDr/fkg3ozqnQj8FKQHgbchc4vMyYP6pAPhj/QLyMf7RG9EcbnwLeBTUF+Al6abvLjQuSDoCbUPxBF1iya3s5DvEb7SZNbgP16+ZnGFMsI4OZY/irkmz2mFBN0twPzg3R/YA4KrW5MFgxCPjcgyD9JCUZKSyGMNmAK8E6Q/wqK0+P+hkmbOhTRZu8g/w5qQhU9CtWRUi3pWIuGyFqD/MnoMHFj0uRyoqmCVuSDawpf3n1KudZpGe1nxW/AEdNNeownOrAe5HvLClxbNKVeBDgD+EWQ7gPMwp1xU3r2Q77VJ8j/AvleyUhjdex5wItBejA6pWb3FL7H1CbD0AEv4RbrF0lhMWsawtiExpPfDvJfAH6N94qb3jMYhXTaM8i/jXxtU6Ebekpa+ynWoLMHNgT5/YBHgX4pfZ+pfvohH9o/yG9APlaSznZH0txotBLFCA1Hqo5AYT8tDlMs2yDfOSLItyLfWpnWF6a9A28hcBY6+A90Qma802RMV/RBnevwdNXN6IiwhWl+aRZbUx8GvkM06TIJuA+Lw3RNH+Qrk4J8G3A+8EjaX5zVnu170JkEoTgmA79EVaQxSWyDaoowmEEb8qFOpx+lQZbBDG5HM5WhOE4DHsJ9DtOZfsg3Tg/ybSho2u1ZGZB1lI/bUFUY73M8hRcdmohBaCFg2KdoQ+ez3JqlEXmEv7mb9uuqDkd7yB3d0OyMfCEcfdqMfkjvKHhHSuQVF+oR4ETgr0F+fxSB2stHapcRwAtE8xQtwBnohzRz8gyY9gxwJFFYkz3RIrAT8jLI5MYJ6IdxzyC/HjgO7bPIhbwjCa4ADgNWB/ntgHlopaT3c1Q/dahTPQ+VPcgXxtLF+RVpk7cwQLOXB6FqFDR2fSPeCVjthDvvbiKa01qBfOHVvIwKKQdhALyPOly/jL12Mlo5OSIXi0yajEBle3LstfvRQMz7uVjUgXIRBmiF5NnAPxJFVd8bhei5CDetqoE6VJYvEW1H/QyV+VmksEq2p5STMEJmoF+OcA95fzRcNxcHdatkhqMyvAOVKaiMD6PEm4xKQTkKAzQ6NRJtcgqZgPojp+ZikekNp6CymxB7bT4q4+WJd+RMuQoDFGBhPKpmwyp2OFoqMBtHWa8EhgMPok52WNtvQjPZE4iOlCg7ylkYoOUAM4ADaX9Y+SQUP/d8yv//UIvUo7J5gyjAMqgMD0Rrnnod4iZNKsWpVqFhvEaipSQ7AHcCS1CVbMqDkahM7iQKxd+Kyu4gVJZlT6UIAzR6MZ3owYeMQgF878HrrfJkF1QGL6MyCQl/uKYTjTaWPZUkjJDX0czoFHSEFOj/MQX4PXAtDryQJYPRM/89KoPQp9YF+bH0MBR/nlSiMEDt0/vQWPhMoqjW2wLXAH9Ey0oG5mJdbTAQPeM/omceHhn8OSqTfVAZlXVfohCVKoyQD4GpwNdQiJ6QoWhZyZ+BaXhpSSkZhJ7pn9EzHhp770lUFlOJavOKpNKFEfI6WqF5KO37H8OB69DCtBtQjCvTM76ADnxcjZ5pfLJ1CXr2x1OBzaYkqkUYIUuBMcAxRIsSQe3gK4E/oTmQ0dmbVrGMRs/sT+jciXj/bQVwLHrmS7M3LT2qTRghT6ORkcODdEhfNAeyFB0schmwY+bWlT9D0LN5DT2rSejZhTyNnu0hwILMrcuAahVGyGJUe3wdHWnbEntvX7SP+F3gMbTUZAC1ywAkgMfQGqZb0TMKaUHP8OvomS7O1rxsqWtdUlOLVoejGdnzgD0S3v8IreGZi4I0fJydabmwHWoKTUR9tKRBitXo0MefkVI4zDxpam5MfL3WhBFSj/Z/nI/W7DQkXNOCdpE9jbbhVsSMbTcYARwFHI2aQ4X+748jQTQDWzKzLmMKCaNv4qvVzxbg2eBve/SLeTowjmg3WQP6NT02yL+Lmg/Lgr9VRGGAypU+SAijg7/DgF0LXLsZiWA2Cp68PgP7ypZarTEKMQzVIOPRr+rWJgivRkPA5cxVaIi1EJ+i2vAJVEOU7WrXtHCN0T3WovU+96DO6OEoksk4FNqn0n9F2tC+iGZUWy4CNuZqUZliYRRmI5pND2fUd0JDwKPRMGVLgfvKiRa0EegF1PxbDnyQq0UVwv8BNYmwIpIWBvwAAAAASUVORK5CYII='
var trafficWay = [
{
name: '压印',
value: 20
}, {
name: '孔小',
value: 10
}, {
name: '变形',
value: 30
}, {
name: '划伤',
value: 20
}, {
name: '披锋',
value: 20
}]
var data = []
var color = ['#00ffff', '#00cfff', '#006ced', '#ffe000', '#ffa800', '#ff5b00', '#ff3000']
for (var i = 0; i < trafficWay.length; i++) {
data.push({
value: trafficWay[i].value,
name: trafficWay[i].name,
itemStyle: {
normal: {
borderWidth: 5,
shadowBlur: 20,
borderColor: color[i],
shadowColor: color[i]
}
}
}, {
value: 2,
name: '',
itemStyle: {
normal: {
label: {
show: false
},
labelLine: {
show: false
},
color: 'rgba(0, 0, 0, 0)',
borderColor: 'rgba(0, 0, 0, 0)',
borderWidth: 0
}
}
})
}
var seriesOption = [{
name: '',
type: 'pie',
clockWise: false,
radius: [60, 66],
hoverAnimation: false,
itemStyle: {
normal: {
label: {
show: true,
position: 'outside',
color: '#ddd',
formatter: function(params) {
var percent = 0
var total = 0
for (var i = 0; i < trafficWay.length; i++) {
total += trafficWay[i].value
}
percent = ((params.value / total) * 100).toFixed(0)
if (params.name !== '') {
// return '缺陷名称:' + params.name + '\n' + '\n' + '占百分比:' + percent + '%'
return params.name + ' ' + percent + '%'
} else {
return ''
}
}
},
labelLine: {
length: 10,
length2: 30,
show: true,
color: '#00ffff'
}
}
},
data: data
}]
const option = {
backgroundColor: 'transparent',
color: color,
title: {
text: '',
top: '48%',
textAlign: 'center',
left: '49%',
textStyle: {
color: '#fff',
fontSize: 22,
fontWeight: '400'
}
},
graphic: {
elements: [{
type: 'image',
z: 3,
style: {
image: img,
width: 88,
height: 88
},
left: 'center',
top: 'center',
position: [100, 100]
}]
},
tooltip: {
show: false
},
// legend: {
// icon: 'circle',
// orient: 'horizontal',
// // x: 'left',
// data: ['压印', '孔小', '变形', '披锋'],
// right: 340,
// bottom: 150,
// align: 'right',
// textStyle: {
// color: '#fff'
// },
// itemGap: 20
// },
toolbox: {
show: false
},
series: seriesOption
}
return option
}
export function echart03() {
return {
// title: {
// text: '2019年销售水量和主营业务收入对比',
// textStyle: {
// align: 'center',
// color: '#fff',
// fontSize: 20
// },
// top: '3%',
// left: '10%'
// },
backgroundColor: 'transparent',
grid: {
left: '5%',
right: '5%',
bottom: '5%',
top: '20%',
containLabel: true
},
tooltip: {
trigger: 'axis',
axisPointer: {
type: 'shadow',
label: {
show: true
}
}
},
xAxis: [
{
type: 'category',
data: ['压印', '孔小', '变形', '划伤', '披锋'],
axisTick: {
alignWithLabel: true
},
nameTextStyle: {
color: '#82b0ec'
},
axisLine: {
lineStyle: {
color: '#82b0ec'
}
},
axisLabel: {
// margin: 5,
textStyle: {
// color: '#82b0ec'
color: colorX,
fontSize: 16
}
}
}
],
yAxis: [
{
boundaryGap: false,
splitNumber: 4,
type: 'value',
// name: '%',
nameTextStyle: {
color: colorY,
fontSize: 14,
lineHeight: 20
},
axisLabel: {
textStyle: {
fontSize: 14,
// color: '#7696c5'
color: colorX
// color: this.colorY
}
},
splitLine: {
show: true,
lineStyle: {
color: '#032c58'
}
},
axisLine: {
show: true,
lineStyle: {
color: '#032c58'
}
},
axisTick: {
show: true
}
}
],
series: [
{
name: '数量',
type: 'bar',
barWidth: 25,
itemStyle: {
normal: {
color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [{
offset: 0,
color: '#00FFE3'
},
{
offset: 1,
color: '#4693EC'
}
])
}
},
data: [228, 260, 230, 235, 227, 228, 233]
// data: [100, 98, 99, 100, 100, 99, 98, 96, 97, 100, 100, 99]
}
]
}
}
export function echart04() {
const indicatorList = [{
name: '人工智能图像识别'
},
{
name: '开发者工具'
},
{
name: '自动光学检测'
},
{
name: '虚拟量测VM'
},
{
name: '高频海量数据分析'
}]
const option = {
backgroundColor: 'transparent',
color: ['#0290ff', '#ffe533', '#ff4d4d', '#06f5bc'],
tooltip: {
show: false // 弹层数据去掉
},
legend: {
data: [
{
name: '使用率', icon: 'rect', itemStyle: {
color: '#06f5bc', borderWidth: 0
}
},
{
name: '实际使用率', icon: 'rect', itemStyle: {
color: '#0290ff', borderWidth: 0
}
}
],
top: 30,
show: true,
y: '1',
center: 0,
itemWidth: 12,
itemHeight: 12,
itemGap: 26,
z: 3,
// orient: 'horizontal',
textStyle: {
fontSize: 14,
color: '#edf8ff'
}
},
radar: {
center: ['50%', '65%'], // 外圆的位置
radius: '55%',
name: {
textStyle: {
color: '#fff',
fontSize: 14,
fontWeight: 400,
fontFamily: 'PingFangSC-Regular,PingFang SC',
fontStyle: 'normal'
}
},
// TODO:
indicator: indicatorList,
splitArea: {
// 坐标轴在 grid 区域中的分隔区域,默认不显示。
show: true,
areaStyle: {
// 分隔区域的样式设置。
color: ['rgba(255,255,255,0)'] // 分隔区域颜色。分隔区域会按数组中颜色的顺序依次循环设置颜色。默认是一个深浅的间隔色。
}
},
axisLine: {
// 指向外圈文本的分隔线样式
lineStyle: {
color: 'rgba(255,255,255,0)'
}
},
splitLine: {
lineStyle: {
type: 'solid',
color: '#0ac8ff', // 分隔线颜色
width: 2 // 分隔线线宽
}
}
},
series: [
{
type: 'radar',
data: [
{
value: [0, 0, 10, 30, 70],
name: '使用率',
areaStyle: {
normal: {
color: {
type: 'radial',
x: 0.5,
y: 0.5,
r: 0.5,
colorStops: [{
offset: 0, color: '#00ffb4' // 0% 处的颜色
},
{
offset: 0.15, color: '#00ffb4' // 100% 处的颜色
},
{
offset: 0.75, color: '#00ffb4' // 100% 处的颜色
},
{
offset: 1, color: '#00ffb4' // 100% 处的颜色
}],
global: false // 缺省为 false
}
}
},
symbolSize: [6, 6],
lineStyle: { // 边缘颜色
// width: 0
color: 'rgba(13, 248, 172, 0.8)'
// shadowBlur:8,
// shadowColor:'#ff3838'
},
itemStyle: {
color: '#fff',
borderColor: '#00ffb4',
borderWidth: 1,
shadowBlur: 8,
shadowColor: '#00ffb4'
}
},
{
value: [80, 80, 80, 70, 60],
name: '实际使用率',
areaStyle: {
normal: {
color: {
type: 'radial',
x: 0.5,
y: 0.5,
r: 0.5,
colorStops: [{
offset: 0, color: 'rgba(0,194,255, 0.8)' // 0% 处的颜色
},
{
offset: 0.15, color: 'rgba(0,194,255, 0.8)' // 100% 处的颜色
},
{
offset: 0.75, color: 'rgba(0,194,255, 0.8)' // 100% 处的颜色
},
{
offset: 1, color: 'rgba(0,194,255, 0.8)' // 100% 处的颜色
}],
global: false // 缺省为 false
}
}
},
symbolSize: [6, 6],
lineStyle: { // 边缘颜色
// width: 0
color: 'rgba(0, 194, 255, 0.8)'
// shadowBlur:8,
// shadowColor:'#ff3838'
},
itemStyle: {
color: '#fff',
borderColor: '#00c8ff',
borderWidth: 1,
shadowBlur: 8,
shadowColor: '#00c8ff'
}
}
]
}
]
}
return option
}
export function echart05() {
var img = 'data:image/png;base64,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'
var trafficWay = [
{
name: '供应客户',
value: 9
}, {
name: '现场管理者',
value: 30
}, {
name: '工厂管理者',
value: 25
}, {
name: '企业决策者',
value: 23
}, {
name: '平台开发者',
value: 14
}]
var data = []
var color = ['#00ffff', '#00cfff', '#006ced', '#ffe000', '#ffa800', '#ff5b00', '#ff3000']
for (var i = 0; i < trafficWay.length; i++) {
data.push({
value: trafficWay[i].value,
name: trafficWay[i].name,
itemStyle: {
normal: {
borderWidth: 5,
shadowBlur: 20,
borderColor: color[i],
shadowColor: color[i]
}
}
}, {
value: 2,
name: '',
itemStyle: {
normal: {
label: {
show: false
},
labelLine: {
show: false
},
color: 'rgba(0, 0, 0, 0)',
borderColor: 'rgba(0, 0, 0, 0)',
borderWidth: 0
}
}
})
}
var seriesOption = [{
name: '',
type: 'pie',
clockWise: false,
radius: [60, 66],
hoverAnimation: false,
itemStyle: {
normal: {
label: {
show: true,
position: 'outside',
color: '#ddd',
formatter: function(params) {
var percent = 0
var total = 0
for (var i = 0; i < trafficWay.length; i++) {
total += trafficWay[i].value
}
percent = ((params.value / total) * 100).toFixed(0)
if (params.name !== '') {
// return '缺陷名称:' + params.name + '\n' + '\n' + '占百分比:' + percent + '%'
return params.name + ' ' + percent + '%'
} else {
return ''
}
}
},
labelLine: {
length: 10,
length2: 30,
show: true,
color: '#00ffff'
}
}
},
data: data
}]
const option = {
backgroundColor: 'transparent',
color: color,
title: {
text: '',
top: '48%',
textAlign: 'center',
left: '49%',
textStyle: {
color: '#fff',
fontSize: 22,
fontWeight: '400'
}
},
graphic: {
elements: [{
type: 'image',
z: 3,
style: {
image: img,
width: 88,
height: 88
},
left: 'center',
top: 'center',
position: [100, 100]
}]
},
tooltip: {
show: false
},
// legend: {
// icon: 'circle',
// orient: 'horizontal',
// // x: 'left',
// data: ['压印', '孔小', '变形', '披锋'],
// right: 340,
// bottom: 150,
// align: 'right',
// textStyle: {
// color: '#fff'
// },
// itemGap: 20
// },
toolbox: {
show: false
},
series: seriesOption
}
return option
}
export function echart06() {
var fontColor = '#30eee9'
const option = {
backgroundColor: 'transparent',
grid: {
left: '5%',
right: '10%',
top: '20%',
bottom: '15%',
containLabel: true
},
xAxis: [
{
type: 'category',
boundaryGap: false,
axisLabel: {
color: fontColor
},
axisLine: {
show: true,
lineStyle: {
color: '#397cbc'
}
},
axisTick: {
show: false
},
splitLine: {
show: true,
lineStyle: {
color: '#195384'
}
},
data: ['10:00', '11:00', '12:00', '13:00', '14:00', '15:00']
}
],
yAxis: [
{
type: 'value',
name: ' ',
// min: 0,
// max: 1000,
splitNumber: 4,
axisLabel: {
formatter: '{value}',
textStyle: {
color: '#2ad1d2'
}
},
axisLine: {
lineStyle: {
color: '#27b4c2'
}
},
axisTick: {
show: false
},
splitLine: {
show: true,
lineStyle: {
color: '#11366e'
}
}
}
],
series: [
{
name: ' ',
type: 'line',
// stack: '总量',
// symbol: 'circle',
// symbolSize: 8,
itemStyle: {
normal: {
color: '#00d4c7',
lineStyle: {
color: '#00d4c7',
width: 1
},
areaStyle: {
// color: '#94C9EC'
color: new echarts.graphic.LinearGradient(0, 1, 0, 0, [{
offset: 0,
color: 'rgba(7,44,90,0.3)'
}, {
offset: 1,
color: 'rgba(0,212,199,0.9)'
}])
}
}
},
data: [500, 800, 100, 900, 1000, 800]
}
]
}
return option
}
export function echart07() {
var fontColor = '#30eee9'
const option = {
backgroundColor: 'transparent',
grid: {
left: '5%',
right: '5%',
top: '35%',
bottom: '0%',
containLabel: true
},
title: {
text: '整厂终检率',
x: '40%',
y: '18%',
textStyle: {
// color: '#fff',
color: '#00ffff',
fontSize: '14',
fontWeight: 'bolder'
}
},
xAxis: [
{
type: 'category',
boundaryGap: false,
axisLabel: {
rotate: 45, // 旋转 45 度
color: fontColor
},
axisLine: {
show: true,
lineStyle: {
color: '#397cbc'
}
},
axisTick: {
show: false
},
splitLine: {
show: true,
lineStyle: {
color: '#195384'
}
},
data: ['10:00', '11:00', '12:00', '13:00', '14:00', '15:00']
}
],
yAxis: [
{
type: 'value',
name: ' ',
// min: 0,
max: 100,
splitNumber: 2,
axisLabel: {
formatter: '{value} %',
textStyle: {
color: '#2ad1d2'
}
},
axisLine: {
lineStyle: {
color: '#27b4c2'
}
},
axisTick: {
show: false
},
splitLine: {
show: true,
lineStyle: {
color: '#11366e'
}
}
}
],
series: [
{
name: ' ',
type: 'line',
// stack: '总量',
// symbol: 'circle',
// symbolSize: 8,
itemStyle: {
normal: {
color: '#00d4c7',
lineStyle: {
color: '#00d4c7',
width: 1
},
areaStyle: {
// color: '#94C9EC'
color: new echarts.graphic.LinearGradient(0, 1, 0, 0, [{
offset: 0,
color: 'rgba(7,44,90,0.3)'
}, {
offset: 1,
color: 'rgba(0,212,199,0.9)'
}])
}
}
},
data: [99, 98, 100, 96, 100, 97]
}
]
}
return option
}
export function echart08() {
var fontColor = '#30eee9'
const option = {
backgroundColor: 'transparent',
grid: {
left: '5%',
right: '5%',
top: '35%',
bottom: '0%',
containLabel: true
},
title: {
text: '缺陷分类比例',
x: '40%',
y: '18%',
textStyle: {
// color: '#fff',
color: '#00ffff',
fontSize: '14',
fontWeight: 'bolder'
}
},
xAxis: [
{
type: 'category',
boundaryGap: false,
axisLabel: {
rotate: 45, // 旋转 45 度
color: fontColor
},
axisLine: {
show: true,
lineStyle: {
color: '#397cbc'
}
},
axisTick: {
show: false
},
splitLine: {
show: true,
lineStyle: {
color: '#195384'
}
},
data: ['压铸', '成型', '抛光', '点焊', '烤漆', '电镀']
}
],
yAxis: [
{
type: 'value',
name: ' ',
// min: 0,
max: 100,
splitNumber: 2,
axisLabel: {
formatter: '{value} %',
textStyle: {
color: '#2ad1d2'
}
},
axisLine: {
lineStyle: {
color: '#27b4c2'
}
},
axisTick: {
show: false
},
splitLine: {
show: true,
lineStyle: {
color: '#11366e'
}
}
}
],
series: [
{
name: ' ',
type: 'bar',
// stack: '总量',
// symbol: 'circle',
// symbolSize: 8,
barWidth: 10,
itemStyle: {
normal: {
color: '#00d4c7',
lineStyle: {
color: '#00d4c7',
width: 1
},
areaStyle: {
// color: '#94C9EC'
color: new echarts.graphic.LinearGradient(0, 1, 0, 0, [{
offset: 0,
color: 'rgba(7,44,90,0.3)'
}, {
offset: 1,
color: 'rgba(0,212,199,0.9)'
}])
}
}
},
data: [55, 68, 60, 86, 40, 37]
}
]
}
return option
}
export function echart09() {
var fontColor = '#30eee9'
const option = {
backgroundColor: 'transparent',
grid: {
left: '5%',
right: '5%',
top: '35%',
bottom: '0%',
containLabel: true
},
title: {
text: '虚拟测量',
x: '45%',
y: '18%',
textStyle: {
// color: '#fff',
color: '#00ffff',
fontSize: '14',
fontWeight: 'bolder'
}
},
xAxis: [
{
type: 'category',
boundaryGap: false,
axisLabel: {
rotate: 45, // 旋转 45 度
color: fontColor
},
axisLine: {
show: true,
lineStyle: {
color: '#397cbc'
}
},
axisTick: {
show: false
},
splitLine: {
show: true,
lineStyle: {
color: '#195384'
}
},
data: ['Pro01', 'Pro02', 'Pro03', 'Pro04', 'Pro05', 'Pro06']
}
],
yAxis: [
{
type: 'value',
name: ' ',
// min: 0,
max: 3000,
splitNumber: 2,
axisLabel: {
formatter: '{value}',
textStyle: {
color: '#2ad1d2'
}
},
axisLine: {
lineStyle: {
color: '#27b4c2'
}
},
axisTick: {
show: false
},
splitLine: {
show: true,
lineStyle: {
color: '#11366e'
}
}
}
],
series: [
{
name: ' ',
type: 'line',
// stack: '总量',
// symbol: 'circle',
// symbolSize: 8,
itemStyle: {
normal: {
color: '#00d4c7',
lineStyle: {
color: '#00d4c7',
width: 1
},
areaStyle: {
// color: '#94C9EC'
color: new echarts.graphic.LinearGradient(0, 1, 0, 0, [{
offset: 0,
color: 'rgba(7,44,90,0.3)'
}, {
offset: 1,
color: 'rgba(0,212,199,0.9)'
}])
}
}
},
data: [2000, 2298, 2800, 0, 2200, 1600]
}
]
}
return option
}
export function echart10() {
var fontColor = '#30eee9'
const option = {
backgroundColor: 'transparent',
grid: {
left: '5%',
right: '5%',
top: '30%',
bottom: '5%',
containLabel: true
},
title: {
text: '压力监控',
x: '46%',
y: '12%',
textStyle: {
// color: '#fff',
color: '#00ffff',
fontSize: '14',
fontWeight: 'bolder'
}
},
xAxis: [
{
type: 'category',
boundaryGap: false,
axisLabel: {
rotate: 90, // 旋转 45 度
color: fontColor
},
axisLine: {
show: true,
lineStyle: {
color: '#397cbc'
}
},
axisTick: {
show: false
},
splitLine: {
show: true,
lineStyle: {
color: '#195384'
}
},
data: ['13:35', '13:40', '13:45', '13:50', '13:55', '14:00', '14:05', '14:10', '14:15', '14:20', '14:25', '14:30', '14:35', '14:40']
}
],
yAxis: [
{
type: 'value',
name: ' ',
min: -20,
max: 20,
splitNumber: 2,
axisLabel: {
formatter: '{value}',
textStyle: {
color: '#2ad1d2'
}
},
axisLine: {
lineStyle: {
color: '#27b4c2'
}
},
axisTick: {
show: false
},
splitLine: {
show: true,
lineStyle: {
color: '#11366e'
}
}
}
],
series: [
{
name: ' ',
type: 'bar',
// stack: '总量',
// symbol: 'circle',
// symbolSize: 8,
barWidth: 10,
itemStyle: {
normal: {
color: '#00d4c7',
lineStyle: {
color: '#00d4c7',
width: 1
},
areaStyle: {
// color: '#94C9EC'
color: new echarts.graphic.LinearGradient(0, 1, 0, 0, [{
offset: 0,
color: 'rgba(7,44,90,0.3)'
}, {
offset: 1,
color: 'rgba(0,212,199,0.9)'
}])
}
}
},
data: [-10, -20, 5, 10, -5, 20, 10, -10, -20, -10, 5, 10, 20, 10]
}
]
}
return option
}
export function echart11() {
const _legendColor = '#8FD8FF'
const _fontSize = 16
const _fontColor = '#8FD8FF'
// const data1 = [70, 90, 100, 70, 90, 100]
// const data2 = [80, 60, 80, 50, 90, 60]
const data1 = [70 + Math.random() * 20, 90 - Math.random() * 20, 100 - Math.random() * 20, 70 + Math.random() * 20, 90 - Math.random() * 20, 80 - Math.random() * 20]
const data2 = [80 + Math.random() * 20, 60 + Math.random() * 20, 80 - Math.random() * 20, 50 + Math.random() * 20, 90 - Math.random() * 20, 60 + Math.random() * 20]
const option = {
backgroundColor: 'transparent',
legend: {
x: '55%',
y: '10%',
itemWidth: 10,
itemHeight: 10,
textStyle: {
fontSize: 16,
color: 'rgba(255,255,255,.7)'
}
},
grid: {
left: '2%',
top: '30%',
right: '2%',
bottom: '0%',
containLabel: true
},
yAxis: {
// max: Math.ceil(Math.max(...data1) * 1.2),
// max: 100,
type: 'value',
position: 'left',
axisLine: {
show: true,
lineStyle: {
color: '#4E84AC'
}
},
axisTick: {
show: false
},
axisLabel: {
formatter: '{value}',
color: '#00FFFF',
fontSize: 14
},
splitLine: {
show: false
}
},
xAxis: {
type: 'category',
nameTextStyle: {
fontSize: 16,
color: '#7dd6ea'
},
axisLabel: {
show: true,
interval: 0,
// margin: 20,
textStyle: {
color: colorX,
fontSize: 16
}
},
splitLine: {
show: false
},
axisTick: {
show: false
},
axisLine: {
show: true,
lineStyle: {
color: '#4E84AC'
// width: 3
}
},
data: ['钢材改制', '冷墩', '热墩', '热处理', '达克罗', '镀锌']
},
series: [
{
name: '计划产量',
type: 'bar',
barWidth: 15,
barGap: '30%',
itemStyle: {
normal: {
color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [
{
offset: 0,
color: 'rgba(0,234,255, 1)'
},
{
offset: 1,
color: 'rgba(0,234,255, .1)'
}
])
}
},
// label: {
// show: true,
// position: 'top',
// textStyle: {
// fontSize: 36,
// color: '#00EAFF'
// },
// formatter: function(params) {
// return params.value + '%'
// }
// },
data: data1,
z: 10,
zlevel: 0
},
{
// 分隔
type: 'pictorialBar',
itemStyle: {
normal: {
color: '#0F375F'
}
},
symbolRepeat: 'fixed',
symbolMargin: 15,
symbol: 'rect',
symbolClip: true,
symbolSize: [15, 2],
symbolPosition: 'start',
symbolOffset: [-10, 0],
data: data1,
width: 2,
z: 0,
zlevel: 1
},
{
name: '实际产量',
type: 'bar',
barWidth: 15,
itemStyle: {
normal: {
color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [
{
offset: 0,
color: 'rgba(252,160,0, 1)'
},
{
offset: 1,
color: 'rgba(252,160,0, .1)'
}
])
}
},
// label: {
// show: true,
// position: 'top',
// textStyle: {
// fontSize: 16,
// color: '#FFA200'
// },
// formatter: function(params) {
// return params.value + '%'
// }
// },
data: data2,
z: 10,
zlevel: 0
},
{
// 分隔
type: 'pictorialBar',
itemStyle: {
normal: {
color: '#0F375F'
}
},
symbolRepeat: 'fixed',
symbolMargin: 15,
symbol: 'rect',
symbolClip: true,
symbolSize: [15, 2],
symbolPosition: 'start',
symbolOffset: [10, 0],
data: data2,
width: 2,
z: 0,
zlevel: 1
}
]
}
return option
}