pc端
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

54 lines
1.1 KiB

4 years ago
<template>
<el-card class="box-card">
<div class="text-sm">月累计湿润时间h</div>
<el-empty description="暂无数据" v-if="noData"></el-empty>
<div id="moistTimeDataContainer"></div>
</el-card>
</template>
<script setup>
import { onMounted, ref, defineExpose } from 'vue';
import { Column } from '@antv/g2plot';
const show = ref(false);
const noData = ref(true);
let bar = null;
// 设置图表
onMounted(() => {
show.value = true;
});
const setDate = data => {
noData.value = false;
if (bar) {
bar.destroy();
}
bar = new Column('moistTimeDataContainer', {
data,
layout: 'vertical',
xField: 'time',
yField: 'value',
// height: 200,
padding: [30, 16, 60, 50],
color: '#C280FF',
columnWidthRatio: 0.6, // 宽度占比
yAxis: {
title: {
text: '月累计湿润时间',
spacing: 20,
},
},
slider: {
start: 0.1,
end: 0.5,
},
meta: { value: { alias: '月累计湿润时间(h)' } },
});
bar.render();
};
defineExpose({ setDate });
</script>