carDetectionReport/components/circular.vue

188 lines
3.9 KiB
Vue
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<template>
<view style="width:55%; height:60%">
<l-echart ref="chartRef"></l-echart>
</view>
</template>
<script>
import * as echarts from '@/uni_modules/lime-echart/static/echarts.min'
export default {
name: "circular",
props: {
apiData: {
type: Object, // 定义 props 类型
default: null // 默认值
}
},
data() {
return {}
},
watch: {
// 监听 message 的变化
apiData(val) {
// console.log('父组件传递的值发生变化:', val);
this.init(val);
}
},
methods: {
async init(data) {
var option = {
xAxis: {
splitLine: {
show: false,
},
axisLabel: {
show: false,
},
axisLine: {
show: false,
},
},
yAxis: {
splitLine: {
show: false,
},
axisLabel: {
show: false,
},
axisLine: {
show: false,
},
},
series: [
// 内圆
{
type: "pie",
radius: ["0", "55%"],
center: ["50%", "50%"],
z: 4,
hoverAnimation: false,
data: [{
name: "",
value: 90,
itemStyle: {
normal: {
// borderColor:'#28B4FF',
color: new echarts.graphic.LinearGradient(0, 1, 0, 0, [{
offset: 0,
color: "rgba(0,0,0,0.1)",
},
{
offset: 0.5,
color: "rgba(0,0,0,0.1)",
},
{
offset: 0.65,
color: "rgba(0,0,0,0.1)",
},
{
offset: 1,
color: "#28B4FF",
},
]),
},
},
label: {
normal: {
rich: {
a: {
color: "#994D01",
align: "center",
fontSize: 30,
padding: [0, 0, 56, 0],
fontWeight: "bold",
},
b: {
color: "#AF6E2F",
align: "center",
fontSize: 16,
fontWeight: "bold",
},
},
// formatter: function(params) {
// return (
// "{a|" + params.value + "}\n\n" + "{b|" +
// "全部领取" + "}"
// );
// },
position: "center",
show: true,
},
},
labelLine: {
show: false,
},
}, ],
},
//进度图
{
type: "gauge",
radius: 70,
detail: {
formatter: "{value}分",
show: true,
offsetCenter: [0, 0],
fontSize: 25,
color:'rgb(49, 190, 255)',
},
data: [{
value: data.score,
}],
axisLine: {
show: true,
lineStyle: {
width: 20,
color: [
[1, 'rgb(12,54,77)']
]
}
},
progress: {
show: true,
width: 20,
itemStyle: {
color: {
// type: 'linear',
colorStops: [{
offset: 0,
color: '#28B4FF' // 0% 处的颜色
},
{
offset: 1,
color: '#55ffff' // 100% 处的颜色
}
],
global: false // 缺省为 false
}
}
},
splitLine: {
show: false
},
axisTick: {
show: false
},
axisLabel: {
show: false
},
pointer: {
show: false
}
},
],
};
// chart 图表实例不能存在data里
const chart = await this.$refs.chartRef.init(echarts);
chart.setOption(option)
// 监听窗口大小改变事件并调用resize方法
window.onresize = function() {
myChart.resize();
};
}
}
}
</script>
<style lang="less">
</style>