showCharts() {
const myChart = echarts.init(this.$refs.box)
var option
option = {
// tooltip: {
// trigger: 'axis'
// },
tooltip: {
trigger: 'axis',
formatter: function (item) {
var relVal = item[0].axisValue
for (var i = 0, l = item.length; i < l; i++) {
relVal += '<br/>' + item[i].marker + item[i].seriesName + ' : ' + item[i].value + '万元'
}
return relVal
}
},
legend: {
selectedMode: false,
right: '3%',
top: '12%',
data: ['采购金额', '销售金额'],
icon: 'pie'
},
grid: {
left: '3%',
right: '3%',
bottom: '3%',
containLabel: true
},
xAxis: {
type: 'category',
boundaryGap: false,
data: this.supplierobj.monthDate,
axisLine: {
show: false // 不显示坐标轴轴线
},
axisTick: {
show: false // 不显示坐标轴刻度
},
axisLabel: {
interval: 0,
rotate: 0
}
},
yAxis: {
name: '单位:(万元)', // Y轴标题
type: 'value',
splitNumber: 5,
axisLine: {
show: false // 不显示坐标轴轴线
},
axisTick: {
show: false // 不显示坐标轴刻度
}
},
series: [{
name: '采购金额',
type: 'line',
color: '#0077FF',
data: this.supplierobj.buyAmount
},
{
name: '销售金额',
type: 'line',
color: '#FF9A00',
data: this.supplierobj.dqXsAmtMonth
}
]
}
myChart.setOption(option, true)
window.addEventListener('resize', () => {
myChart.resize()
})
},
showCharts1() {
const myChart = echarts.init(this.$refs.box1)
var option
var _this = this;
option = {
color: ['#2D5DFE', '#ffffff', '#3E95FE', '#ffffff', '#27DA7F', '#ffffff', '#FAC009', '#ffffff'],
legend: {
selectedMode: false,
x: 'center',
y: 'bottom',
data: ['A类供应商', 'B类供应商', 'C类供应商', 'D类供应商']
},
grid: {
x: 20,
y: 20,
// left: '2%',
// right: '4%',
// bottom: '3%',
containLabel: true
},
series: [{
name: 'Funnel',
type: 'funnel',
left: -160,
top: 20,
bottom: 0,
hoverAnimation: false,
// height:150,
width: '100%',
min: 0,
max: 100,
minSize: '0',
maxSize: '0',
sort: 'none',
gap: 2,
z: 0,
label: {
show: true, //默认展示
formatter: function (item) {
return item.name + ': ' + _this.categoryobj[item.dataIndex].supplierNum + '家 ' + _this.categoryobj[item.dataIndex].buyAmount+
'万元 ' + ' 占' + _this.categoryobj[item.dataIndex].buyAmountPer + '%'
},
position: 'right',
},
labelLine: {
show: true,
normal: {
length: 110,
position: 'right',
lineStyle: {
width: 1,
// color:'#e8e9f1',
type: 'solid'
},
},
},
data: this.categoryobj
},
{
name: 'Funnel',
type: 'funnel',
left: -105,
top: 20,
bottom: 0,
hoverAnimation: false,
// height:150,
width: '80%',
min: 0,
max: 100,
minSize: '1%',
maxSize: '40%',
sort: 'none',
gap: 2,
z: 1,
label: {
show: true, //默认展示
formatter: function (item) {
return item.dataIndex%2==0?_this.categoryobj[item.dataIndex].buyAmount +'万元' :''
},
position: 'inside',
},
labelLine: {
show: true,
normal: {
length: 45,
position: 'inside',
lineStyle: {
width: 1,
// color:'#e8e9f1',
type: 'solid'
},
},
},
data: this.categoryobj
}]
};
myChart.setOption(option, true)
window.addEventListener('resize', () => {
myChart.resize()
})
},
showCharts2(obj) {
const myChart = echarts.init(this.$refs.box2)
var option
const _this = this
option = {
// tooltip: {
// trigger: 'item',
// // formatter: '{a} <br/>{b} : {c} ({d}%)'
// formatter: '{b} : {c} ({d}%)'
// },
legend: {
orient: 'vertical',
// left: 'right',
right: 50,
top: 150,
selectedMode: false,
data: ['A类风险', 'B类风险', 'C类风险', 'D1类风险', 'D2类风险']
},
color: ['#3D7EFF', '#52CCA3', '#F97272', '#F79B40', '#E34848'],
toolbox: {
show: true,
},
series: [{
// name: 'Area Mode',
label: {
show: true, //默认展示
// formatter: function (item) {
// return item.name + ': ' + _this.categoryobj[item.dataIndex].supplierNum + '家 ' + _this.categoryobj[item.dataIndex].buyAmount+
// '万元 ' + ' 占' + _this.categoryobj[item.dataIndex].buyAmountPer + '%'
// },
// position: 'right',
formatter: function (item) {
// console.log(item)
if (_this.radio4 == '数量') {
return item.name + ' ' + item.data.value + '家\n' + obj[item.dataIndex].riskRatio
} else {
return item.name + ' ' + item.data.value + '万元\n' + obj[item.dataIndex].riskRatio
}
}
},
type: 'pie',
// radius: [20, 140],
radius: '50%',
center: ['40%', '38%'],
avoidLabelOverlap: true,
// roseType: 'area',
// minAngle:30,
itemStyle: {
borderRadius: 5
},
data: obj
}]
};
myChart.setOption(option, true)
window.addEventListener('resize', () => {
myChart.resize()
})
},
showCharts3(obj, arr) {
const myChart = echarts.init(this.$refs.box3)
var option
const _this = this
option = {
tooltip: {
trigger: 'axis',
formatter: function (params) {
if (_this.radio5 == '数量') {
var relVal = params[0].name
for (var i = 0, l = params.length; i < l; i++) {
relVal += '<br/>' + params[i].marker + params[i].seriesName + ' : ' + params[i].value + '家'
}
return relVal
} else {
var relVal = params[0].name
for (var i = 0, l = params.length; i < l; i++) {
relVal += '<br/>' + params[i].marker + params[i].seriesName + ' : ' + params[i].value + '万元'
}
return relVal
}
},
},
grid: {
left: '3%',
right: '4%',
bottom: '27%',
top: 15,
containLabel: true
},
xAxis: {
type: 'category',
boundaryGap: false,
data: arr,
axisLine: {
show: false, // 不显示坐标轴轴线
onZero: true
},
axisTick: {
show: false // 不显示坐标轴刻度
},
},
yAxis: {
type: 'value',
splitLine: {
show: false
},
axisLine: {
show: false // 不显示坐标轴轴线
},
axisTick: {
show: false // 不显示坐标轴刻度
}
},
series: obj,
};
myChart.setOption(option, true)
window.addEventListener('resize', () => {
myChart.resize()
})
},
showCharts4(obj) {
const myChart = echarts.init(this.$refs.box4)
var option
option = {
tooltip: {
trigger: 'item'
},
// legend: {
// // top: -20,
// // orient: 'vertical',
// // top:-10,
// // left: 'right',
// right: '2%',
// // right: 'right',
// data: ['A类风险', 'B类风险', 'C类风险', 'D1类风险', 'D2类风险']
// },
// color: ['#ff0000', '#ff9900', '#ffff00', '#00ff00', '#4a86e8'],
// grid: { // 控制图的大小,调整下面这些值就可以,
// x: 40,
// y:50,
// x2: 100,
// y2: 150// y2可以控制 X轴跟Zoom控件之间的间隔,避免以为倾斜后造成 label重叠到zoom上
// },
radar: {
center: ['50%', '35%'],
radius: '50%',
// shape: 'circle',
splitNumber: 5, // 雷达图圈数设置
indicator: [
// { name: '敞口逾期(次数)', color: '#222222', max: 100 },
{
name: '敞口逾期(次数)',
color: '#222222'
},
{
name: '敞口逾期(金额)',
color: '#222222'
},
{
name: '盘点差异(金额)',
color: '#222222'
},
{
name: '往来对账差异(金额)',
color: '#222222'
},
{
name: '销售达成(率)',
color: '#222222'
}
],
splitArea: {
// show: false,
// areaStyle: {
// color: 'rgba(255,0,0,0)' // 图表背景的颜色
// }
}
},
series: [{
// name: '预算 vs 开销(Budget vs spending)',
// radius: ['50%', '65%'],
type: 'radar',
data: obj
}]
}
myChart.setOption(option, true)
window.addEventListener('resize', () => {
myChart.resize()
})
},
showCharts(charts) {
let myChart = echarts.init(this.$refs.box);
var option;
option = {
tooltip: {
trigger: "axis",
// position: "top",
},
formatter: function (item) {
// console.log(item)
return `<div>
<div style="margin: 0 8px;">
${ charts.flag[item[0].dataIndex]==1?`<div style="color:#ffffff;margin-left:10px;">巡检日期:${item[0].name}</div>`:''}
<div style="color:#ffffff;margin-left:10px;">金额:${item[0].value}(万元)</div>
</div>
</div>`
},
color : ["rgba(73, 168, 255", "rgba(0,127,231", "rgba(106,234,103"],
xAxis: {
type: 'category',
boundaryGap: false,
data:charts.lineX,
show: true,
},
yAxis: {
splitLine: {show: false},
type: 'value'
},
series: [{
data: charts.value,
type: 'line',
areaStyle: {},
smooth: true,
show: true,
}]
};
myChart.setOption(option, true);
window.addEventListener("resize", () => {
myChart.resize();
});
},