|
@@ -5,9 +5,7 @@
|
|
|
<span>重点用地监管</span>
|
|
|
</div>
|
|
|
<!-- <div class="hysy_box">
|
|
|
- <DialWatch class="hysy_dial_watch" :dial_watch_info="dial_watch_info" ref="hysy_dial_watch" />
|
|
|
- <BarGraph3D class="hysy_bar_graph" ref="hysy_bar_graph" />
|
|
|
-
|
|
|
+
|
|
|
</div> -->
|
|
|
</div>
|
|
|
</template>
|
|
@@ -65,173 +63,6 @@ export default {
|
|
|
}, //生命周期 - 创建完成(可以访问当前this实例)
|
|
|
beforeMount() { }, //生命周期 - 挂载之前
|
|
|
methods: {
|
|
|
- init_hysyEchart() {
|
|
|
-
|
|
|
- var dom = document.getElementById("hysyEchart");
|
|
|
- var myChart = window.echarts.init(dom);
|
|
|
- var myChart = window.echarts.init(dom);
|
|
|
- // Mock数据
|
|
|
- const mockData = {
|
|
|
- xdata: store.state.cockpit_hysy.echart.xdata,
|
|
|
- result: store.state.cockpit_hysy.echart.result
|
|
|
- }
|
|
|
-
|
|
|
- const color = [
|
|
|
- [{ offset: 0, color: 'rgba(183, 117, 12, 0.8)' }, { offset: 0.5, color: 'rgba(183, 117, 12, 0.8)' }, { offset: 0.5, color: 'rgba(249, 180, 71, 0.8)' }, { offset: 1, color: 'rgba(249, 180, 71, 0.8)' }],
|
|
|
-
|
|
|
- [{ offset: 0, color: 'rgba(34, 129, 209, 0.8)' }, { offset: 0.5, color: 'rgba(34, 129, 209, 0.8)' }, { offset: 0.5, color: 'rgba(97, 173, 237, 0.8)' }, { offset: 1, color: 'rgba(97, 173, 237, 0.8)' }],
|
|
|
-
|
|
|
- ]
|
|
|
- const color2 = ['rgba(34, 129, 209, 0.8)', 'rgba(34, 129, 209, 0.8)',]
|
|
|
-
|
|
|
- // tooltip
|
|
|
- const tooltip = {
|
|
|
- trigger: "axis",
|
|
|
- textStyle: { fontSize: '100%' },
|
|
|
- formatter: params => {
|
|
|
- let rander = params.map(item => `<div>${item.seriesName}: ${item.value}公顷</div>`).join('')
|
|
|
- return rander
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
- const legend = {
|
|
|
- data: ['计划出让', '完成出让'], //图例名称
|
|
|
-
|
|
|
- textStyle: { fontSize: 12, color: '#fff' },
|
|
|
- itemWidth: 24,
|
|
|
- itemHeight: 15,
|
|
|
- itemGap: 15,
|
|
|
- top: '-4%',
|
|
|
- right: '2%',
|
|
|
- selectedMode: false
|
|
|
- }
|
|
|
- const grid = { top: '20%', left: '12%', right: '2%', bottom: '25%' }
|
|
|
- // xAxis
|
|
|
- const xAxis = {
|
|
|
- axisTick: { show: false },
|
|
|
- axisLine: { lineStyle: { color: '#BCD3E5' } },
|
|
|
- axisLabel: {
|
|
|
- textStyle: { fontSize: 12, color: '#BCD3E5' },
|
|
|
- },
|
|
|
- axisLabel: {
|
|
|
- interval: 0,
|
|
|
- formatter: function (value) {
|
|
|
- // 当文字长度大于2时,使用slice方法截取字符串并拼接省略号;否则直接返回原文字
|
|
|
- if (value.length > 4) {
|
|
|
- return `${value.slice(0, 4)}...`;
|
|
|
- } else {
|
|
|
- return value;
|
|
|
- }
|
|
|
- },
|
|
|
- },
|
|
|
- data: mockData.xdata,
|
|
|
- }
|
|
|
-
|
|
|
- // yAxis
|
|
|
- const yAxis = [
|
|
|
- {
|
|
|
- min: 0,
|
|
|
- name: '公顷',
|
|
|
- type: 'value',
|
|
|
- axisLine: {
|
|
|
- show: false,
|
|
|
- lineStyle: {
|
|
|
- color: '#BCD3E5'
|
|
|
- }
|
|
|
- },
|
|
|
- splitLine: {
|
|
|
- show: true,
|
|
|
- lineStyle: {
|
|
|
- type: "dashed",
|
|
|
- color: "rgba(255,255,255,0.1)"
|
|
|
- },
|
|
|
- },
|
|
|
- axisTick: {
|
|
|
- show: false
|
|
|
- },
|
|
|
- axisLabel: {
|
|
|
- show: true,
|
|
|
- fontSize: 12,
|
|
|
-
|
|
|
- },
|
|
|
- boundaryGap: ['20%', '20%']
|
|
|
- },]
|
|
|
- // const yAxis = [{
|
|
|
- // axisTick: { show: false },
|
|
|
- // axisLine: { show: false },
|
|
|
- // splitLine: { lineStyle: { color: 'rgba(255,255,255, .05)' } },
|
|
|
- // axisLabel: { show: false, textStyle: { fontSize: 14, color: '#fff' } }
|
|
|
- // }, {
|
|
|
- // show: false,
|
|
|
- // splitLine: { show: false },
|
|
|
- // axisLine: { show: false },
|
|
|
- // axisTick: { show: false },
|
|
|
- // }]
|
|
|
- // const diamondData = mockData.result.reduce((pre, cur, index) => {
|
|
|
- // pre[index] = cur.data.map((el, id) => el + (pre[index - 1] ? pre[index - 1][id] : 0))
|
|
|
- // return pre
|
|
|
- // }, [])
|
|
|
-
|
|
|
- let series = mockData.result.reduce((p, c, i, array) => {
|
|
|
- p.push({
|
|
|
- z: i + 1,
|
|
|
- stack: '总量',
|
|
|
- type: 'bar',
|
|
|
- name: c.name,
|
|
|
- barGap: 18,
|
|
|
- barWidth: 18,
|
|
|
- data: c.data,
|
|
|
- itemStyle: { color: { type: 'linear', x: 0, x2: 1, y: 0, y2: 0, colorStops: color[i] } },
|
|
|
- }, {
|
|
|
- z: i + 10,
|
|
|
- type: 'pictorialBar',
|
|
|
- symbolPosition: 'end',
|
|
|
- symbol: 'diamond',
|
|
|
- symbolOffset: [0, '-50%'],
|
|
|
- symbolSize: [18, 12],
|
|
|
- data: mockData.result[i],
|
|
|
- itemStyle: { color: color2[i] },
|
|
|
- tooltip: { show: false },
|
|
|
- })
|
|
|
-
|
|
|
- // 是否最后一个了?
|
|
|
- if (p.length === (array.length) * 2) {
|
|
|
- p.push({
|
|
|
- z: array.length * 2,
|
|
|
- type: "pictorialBar",
|
|
|
- symbolPosition: "start",
|
|
|
- data: mockData.result[0].data,
|
|
|
- symbol: "diamond",
|
|
|
- symbolOffset: ["0%", "50%"],
|
|
|
- symbolSize: [18, 10],
|
|
|
- itemStyle: { color: { type: 'linear', x: 0, x2: 1, y: 0, y2: 0, colorStops: color[0] } },
|
|
|
- tooltip: { show: false },
|
|
|
- })
|
|
|
- return p
|
|
|
- }
|
|
|
-
|
|
|
- return p
|
|
|
- }, [])
|
|
|
-
|
|
|
- const dataZoom = [{
|
|
|
- show: false,
|
|
|
- type: 'slider',
|
|
|
- startValue: 0,
|
|
|
- endValue: 7,
|
|
|
- moveOnMouseWheel: true,
|
|
|
- moveOnMouseMove: true,
|
|
|
- zoomOnMouseWheel: false,
|
|
|
- }]
|
|
|
-
|
|
|
- let option = {
|
|
|
-
|
|
|
- tooltip, legend, xAxis, yAxis, series, grid, dataZoom, backgroundColor: 'rgba(0, 0, 0, 0)'
|
|
|
- }
|
|
|
-
|
|
|
-
|
|
|
- myChart.setOption(option);
|
|
|
-
|
|
|
- },
|
|
|
|
|
|
async init_info(params) {
|
|
|
const that = this;
|
|
@@ -315,8 +146,8 @@ export default {
|
|
|
mounted() {
|
|
|
const that = this;
|
|
|
this.$nextTick((res) => {
|
|
|
- this.init_info();
|
|
|
- this.init_echart_data();
|
|
|
+ // this.init_info();
|
|
|
+ // this.init_echart_data();
|
|
|
|
|
|
})
|
|
|
},
|
|
@@ -392,16 +223,6 @@ export default {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
-.hysy_bar_graph {
|
|
|
- margin-left: 5rem;
|
|
|
- left: -5rem !important;
|
|
|
- top: -12rem !important;
|
|
|
- height: 10rem !important;
|
|
|
-}
|
|
|
|
|
|
-.hysy_dial_watch {
|
|
|
- position: relative;
|
|
|
- top: -2.5rem;
|
|
|
|
|
|
-}
|
|
|
</style>
|