|
@@ -0,0 +1,151 @@
|
|
|
+<template>
|
|
|
+ <div class="myChart" ref="myChart" :style="{height: height+'px'}">
|
|
|
+
|
|
|
+ </div>
|
|
|
+</template>
|
|
|
+
|
|
|
+<script>
|
|
|
+export default {
|
|
|
+ data() {
|
|
|
+ return {
|
|
|
+ }
|
|
|
+ },
|
|
|
+ props: {
|
|
|
+ height: Number
|
|
|
+ },
|
|
|
+ mounted() {
|
|
|
+ this.init()
|
|
|
+ },
|
|
|
+ methods: {
|
|
|
+ init() {
|
|
|
+ let chart = this.$echarts.init(this.$refs.myChart);
|
|
|
+ let options = {
|
|
|
+ legend: {
|
|
|
+ data: [
|
|
|
+ '早餐人数',
|
|
|
+ '午餐人数',
|
|
|
+ '晚餐人数',
|
|
|
+ '早餐单价',
|
|
|
+ '午餐单价',
|
|
|
+ '晚餐单价',
|
|
|
+ ]
|
|
|
+ },
|
|
|
+ grid: {
|
|
|
+ left: '0%', //默认10%
|
|
|
+ right: '0%', //默认10%
|
|
|
+ bottom: '0%', //默认60
|
|
|
+ top: '15%',
|
|
|
+ containLabel: true
|
|
|
+ //grid区域是否包含坐标轴的刻度标签
|
|
|
+ },
|
|
|
+ xAxis: {
|
|
|
+ type: 'category',
|
|
|
+ data: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun']
|
|
|
+ },
|
|
|
+ yAxis: [
|
|
|
+ {
|
|
|
+ name: '人数',
|
|
|
+ type: 'value',
|
|
|
+ nameTextStyle: {
|
|
|
+ padding: [10, 0, 10, -20]
|
|
|
+ },
|
|
|
+ },
|
|
|
+ {
|
|
|
+ type: 'value',
|
|
|
+ name: '平均单价',
|
|
|
+ nameTextStyle: {
|
|
|
+ padding: [10, 20, 10, 0]
|
|
|
+ },
|
|
|
+ splitNumber: 5,
|
|
|
+ splitLine: {
|
|
|
+ show: true,
|
|
|
+ lineStyle: {
|
|
|
+ type: 'dashed',
|
|
|
+ width: 1,
|
|
|
+ // 使用深浅的间隔色
|
|
|
+ color: ['#566471', '#566471']
|
|
|
+ }
|
|
|
+ },
|
|
|
+ axisLabel: {
|
|
|
+ show: true,
|
|
|
+ textStyle: {
|
|
|
+ fontSize: 12
|
|
|
+ },
|
|
|
+ formatter: '{value} 元/单'
|
|
|
+ }
|
|
|
+ },
|
|
|
+ ],
|
|
|
+ tooltip: {
|
|
|
+ trigger: 'axis',
|
|
|
+ axisPointer: {
|
|
|
+ type: 'shadow'
|
|
|
+ },
|
|
|
+ textStyle: {
|
|
|
+ color: '#fff',
|
|
|
+ align: 'left',
|
|
|
+ fontSize: 14
|
|
|
+ },
|
|
|
+ axisLine: {//x坐标轴轴线
|
|
|
+ show: true,
|
|
|
+ lineStyle: {//x坐标轴轴线样式
|
|
|
+ color: '#000',//'#ccc' | 'rgb(128, 128, 128)' | 'rgba(128, 128, 128, 0.5)',设置标签颜色
|
|
|
+ }
|
|
|
+ },
|
|
|
+ backgroundColor: 'rgba(0,0,0,0.8)',
|
|
|
+ },
|
|
|
+ series: [
|
|
|
+ {
|
|
|
+ name: '早餐人数',
|
|
|
+ data: [120, 200, 150, 80, 70, 110, 130],
|
|
|
+ type: 'bar',
|
|
|
+ stack: 'A',
|
|
|
+ backgroundStyle: {
|
|
|
+ color: 'rgba(180, 180, 180, 0.2)'
|
|
|
+ }
|
|
|
+ },
|
|
|
+ {
|
|
|
+ name: '午餐人数',
|
|
|
+ data: [78, 154, 111, 70, 66, 88, 100],
|
|
|
+ type: 'bar',
|
|
|
+ stack: 'A',
|
|
|
+ backgroundStyle: {
|
|
|
+ color: 'rgba(180, 180, 180, 0.2)'
|
|
|
+ }
|
|
|
+ },
|
|
|
+ {
|
|
|
+ name: '晚餐人数',
|
|
|
+ data: [78, 154, 111, 70, 66, 88, 100],
|
|
|
+ type: 'bar',
|
|
|
+ stack: 'A',
|
|
|
+ backgroundStyle: {
|
|
|
+ color: 'rgba(180, 180, 180, 0.2)'
|
|
|
+ }
|
|
|
+ },
|
|
|
+ {
|
|
|
+ name: '早餐单价',
|
|
|
+ data: [30, 17, 21, 32, 13, 18, 32],
|
|
|
+ yAxisIndex:1,
|
|
|
+ type: 'line',
|
|
|
+ },
|
|
|
+ {
|
|
|
+ name: '午餐单价',
|
|
|
+ data: [22, 34, 25, 18, 35, 47, 54],
|
|
|
+ yAxisIndex:1,
|
|
|
+ type: 'line',
|
|
|
+ },
|
|
|
+ {
|
|
|
+ name: '晚餐单价',
|
|
|
+ data: [22, 14, 19, 32, 18, 33, 25],
|
|
|
+ yAxisIndex:1,
|
|
|
+ type: 'line',
|
|
|
+ }
|
|
|
+ ]
|
|
|
+ };
|
|
|
+ chart.setOption(options);
|
|
|
+ }
|
|
|
+ }
|
|
|
+}
|
|
|
+</script>
|
|
|
+
|
|
|
+<style lang="less" scoped>
|
|
|
+</style>
|