5.22
This commit is contained in:
@@ -18,22 +18,60 @@ import resize from '@/utils/chartMixins/resize'
|
||||
export default {
|
||||
name: 'DefectScatterPlotChart',
|
||||
mixins: [resize],
|
||||
props: {
|
||||
defectMsg: {
|
||||
type: Object,
|
||||
default: () => {
|
||||
return {}
|
||||
}
|
||||
}
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
chartDom: '',
|
||||
chart: '',
|
||||
chartHeight: tableHeight(446)
|
||||
chartHeight: tableHeight(446),
|
||||
list: [
|
||||
{ label: 'S', value: 's' },
|
||||
{ label: 'M', value: 'm' },
|
||||
{ label: 'L', value: 'l' },
|
||||
{ label: 'XL', value: 'xl' },
|
||||
{ label: '气泡', value: 'bl' },
|
||||
{ label: '变形', value: 'distortion' },
|
||||
{ label: '纤维', value: 'fiber' },
|
||||
{ label: '划伤', value: 'scratch' },
|
||||
{ label: '结节', value: 'knot' },
|
||||
{ label: '结石', value: 'stone' },
|
||||
{ label: '铂金', value: 'pt' },
|
||||
{ label: '拖尾', value: 'tail' },
|
||||
{ label: 'ADG', value: 'adg' },
|
||||
{ label: '点状缺陷', value: 'tin' },
|
||||
{ label: '锡缺陷(顶部)', value: 'top' },
|
||||
{ label: '锡缺陷(底部)', value: 'bottom' },
|
||||
{ label: '无法识别', value: 'iisrest' }
|
||||
]
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
window.addEventListener('resize', () => {
|
||||
this.chartHeight = tableHeight(446)
|
||||
})
|
||||
setTimeout(() => {
|
||||
},
|
||||
watch: {
|
||||
defectMsg: function () {
|
||||
this.getChart()
|
||||
}, 20)
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
transLabel(v) {
|
||||
let label = ''
|
||||
for (let l = 0; l < this.list.length; l++) {
|
||||
if (v === this.list[l].value) {
|
||||
label = this.list[l].label
|
||||
}
|
||||
}
|
||||
return label
|
||||
},
|
||||
getChart() {
|
||||
if (
|
||||
this.chart !== null &&
|
||||
@@ -44,105 +82,28 @@ export default {
|
||||
}
|
||||
this.chartDom = document.getElementById('defectScatterPlotChart')
|
||||
this.chart = echarts.init(this.chartDom)
|
||||
const dataS = [
|
||||
[1, 55],
|
||||
[2, 25],
|
||||
[3, 56],
|
||||
[4, 33],
|
||||
[5, 42],
|
||||
[6, 82],
|
||||
[7, 74],
|
||||
[8, 78],
|
||||
[9, 267],
|
||||
[10, 185],
|
||||
[11, 39],
|
||||
[12, 41],
|
||||
[13, 64],
|
||||
[14, 108],
|
||||
[15, 108],
|
||||
[16, 33],
|
||||
[17, 94],
|
||||
[18, 186],
|
||||
[19, 57],
|
||||
[20, 22],
|
||||
[21, 39],
|
||||
[22, 94],
|
||||
[23, 99],
|
||||
[24, 31],
|
||||
[25, 42],
|
||||
[26, 154],
|
||||
[27, 234],
|
||||
[28, 160],
|
||||
[29, 134],
|
||||
[30, 52],
|
||||
[31, 46]
|
||||
]
|
||||
const dataM = [
|
||||
[1, 26],
|
||||
[2, 85],
|
||||
[3, 78],
|
||||
[4, 21],
|
||||
[5, 41],
|
||||
[6, 56],
|
||||
[7, 64],
|
||||
[8, 55],
|
||||
[9, 76],
|
||||
[10, 91],
|
||||
[11, 84],
|
||||
[12, 64],
|
||||
[13, 70],
|
||||
[14, 77],
|
||||
[15, 109],
|
||||
[16, 73],
|
||||
[17, 54],
|
||||
[18, 51],
|
||||
[19, 91],
|
||||
[20, 73],
|
||||
[21, 73],
|
||||
[22, 84],
|
||||
[23, 93],
|
||||
[24, 99],
|
||||
[25, 146],
|
||||
[26, 113],
|
||||
[27, 81],
|
||||
[28, 56],
|
||||
[29, 82],
|
||||
[30, 106],
|
||||
[31, 118]
|
||||
]
|
||||
const dataL = [
|
||||
[1, 91],
|
||||
[2, 65],
|
||||
[3, 83],
|
||||
[4, 109],
|
||||
[5, 106],
|
||||
[6, 109],
|
||||
[7, 106],
|
||||
[8, 89],
|
||||
[9, 53],
|
||||
[10, 80],
|
||||
[11, 117],
|
||||
[12, 99],
|
||||
[13, 95],
|
||||
[14, 116],
|
||||
[15, 108],
|
||||
[16, 134],
|
||||
[17, 79],
|
||||
[18, 71],
|
||||
[19, 97],
|
||||
[20, 84],
|
||||
[21, 87],
|
||||
[22, 104],
|
||||
[23, 87],
|
||||
[24, 168],
|
||||
[25, 65],
|
||||
[26, 39],
|
||||
[27, 39],
|
||||
[28, 93],
|
||||
[29, 188],
|
||||
[30, 174],
|
||||
[31, 187]
|
||||
]
|
||||
console.log(this.defectMsg)
|
||||
let legendList = []
|
||||
let seriesList = []
|
||||
for (let i in this.defectMsg) {
|
||||
console.log(i)
|
||||
console.log(this.transLabel(i))
|
||||
legendList.push(this.transLabel(i))
|
||||
let arr1 = []
|
||||
let obj = {}
|
||||
for (let j of this.defectMsg[i]) {
|
||||
let arr2 = []
|
||||
arr2.push(parseInt(j.xpos))
|
||||
arr2.push(parseInt(j.ypos))
|
||||
arr1.push(arr2)
|
||||
}
|
||||
obj.name = this.transLabel(i)
|
||||
obj.type = 'scatter'
|
||||
obj.data = arr1
|
||||
obj.symbolSize = 5
|
||||
seriesList.push(obj)
|
||||
}
|
||||
console.log(seriesList)
|
||||
var option = {
|
||||
color: [
|
||||
'#5d7ab7',
|
||||
@@ -166,7 +127,7 @@ export default {
|
||||
legend: {
|
||||
top: 10,
|
||||
left: 0,
|
||||
data: ['S', 'M', 'L'],
|
||||
data: legendList,
|
||||
textStyle: {
|
||||
fontSize: 9
|
||||
},
|
||||
@@ -185,7 +146,6 @@ export default {
|
||||
nameTextStyle: {
|
||||
fontSize: 16
|
||||
},
|
||||
max: 31,
|
||||
splitLine: {
|
||||
show: true,
|
||||
lineStyle: {
|
||||
@@ -207,26 +167,27 @@ export default {
|
||||
}
|
||||
}
|
||||
},
|
||||
series: [
|
||||
{
|
||||
name: 'S',
|
||||
type: 'scatter',
|
||||
data: dataS,
|
||||
symbolSize: 5
|
||||
},
|
||||
{
|
||||
name: 'M',
|
||||
type: 'scatter',
|
||||
data: dataM,
|
||||
symbolSize: 5
|
||||
},
|
||||
{
|
||||
name: 'L',
|
||||
type: 'scatter',
|
||||
data: dataL,
|
||||
symbolSize: 5
|
||||
}
|
||||
]
|
||||
series: seriesList
|
||||
// series: [
|
||||
// {
|
||||
// name: 'S',
|
||||
// type: 'scatter',
|
||||
// data: dataS,
|
||||
// symbolSize: 5
|
||||
// },
|
||||
// {
|
||||
// name: 'M',
|
||||
// type: 'scatter',
|
||||
// data: dataM,
|
||||
// symbolSize: 5
|
||||
// },
|
||||
// {
|
||||
// name: 'L',
|
||||
// type: 'scatter',
|
||||
// data: dataL,
|
||||
// symbolSize: 5
|
||||
// }
|
||||
// ]
|
||||
}
|
||||
option && this.chart.setOption(option)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user