| | |
| | | <RightTitle title="交通安全形势研判分析"> |
| | | <template #top> |
| | | <div class="select-container flex"> |
| | | <div class="item whitespace-no-wrap cursor-pointer" :class="{'select-active': item.isActive}" v-for="item in selectItems" :key="item.itemIndex" |
| | | @click="changeChart(item)"> |
| | | <div class="item whitespace-no-wrap cursor-pointer" :class="{ 'select-active': item.isActive }" |
| | | v-for="item in selectItems" :key="item.itemIndex" @click="changeChart(item)"> |
| | | {{ item.name }} |
| | | </div> |
| | | </div> |
| | |
| | | ]); |
| | | |
| | | const testData1 = ref([ |
| | | { name: '都江堰市', state: { '2023-1': 1000, '2023-2': 2000, '2023-3': 1233 }, state2: { '2023-1': 12312, '2023-2': 23123, '2023-3': 2111 } }, |
| | | { name: '奎光塔街道', state: { '2023-1': 1000, '2023-2': 6000, '2023-3': 1233 }, state2: { '2023-1': 12312, '2023-2': 23123, '2023-3': 2111 } }, |
| | | { name: '蒲阳街道', state: { '2023-1': 1000, '2023-2': 2000, '2023-3': 1233 }, state2: { '2023-1': 12312, '2023-2': 23123, '2023-3': 2111 } }, |
| | | { name: '聚源镇', state: { '2023-1': 1000, '2023-2': 8000, '2023-3': 12233 }, state2: { '2023-1': 12312, '2023-2': 23123, '2023-3': 2111 } }, |
| | | { name: '银杏街道', state: { '2023-1': 1000, '2023-2': 2000, '2023-3': 1233 }, state2: { '2023-1': 12312, '2023-2': 23123, '2023-3': 2111 } }, |
| | | { name: '石羊镇', state: { '2023-1': 1000, '2023-2': 2000, '2023-3': 12313 }, state2: { '2023-1': 12312, '2023-2': 23123, '2023-3': 2111 } }, |
| | | { |
| | | name: '都江堰市', |
| | | state: { '2023-1': 1000, '2023-2': 2000, '2023-3': 1233, '2023-4': 2132, '2023-5': 2999 }, |
| | | state2: { '2023-1': 12312, '2023-2': 2312, '2023-3': 2111, '2023-4': 2132, '2023-5': 2999 } |
| | | }, |
| | | { |
| | | name: '奎光塔街道', |
| | | state: { '2023-1': 21, '2023-2': 12, '2023-3': 224, '2023-4': 662, '2023-5': 71 }, |
| | | state2: { '2023-1': 12312, '2023-2': 21, '2023-3': 2111, '2023-4': 2132, '2023-5': 2999 } |
| | | }, |
| | | { |
| | | name: '蒲阳街道', |
| | | state: { '2023-1': 1000, '2023-2': 2131, '2023-3': 1233, '2023-4': 2132, '2023-5': 3211 }, |
| | | state2: { '2023-1': 12312, '2023-2': 23123, '2023-3': 2111, '2023-4': 2132, '2023-5': 2999 } |
| | | }, |
| | | { |
| | | name: '聚源镇', |
| | | state: { '2023-1': 1000, '2023-2': 500, '2023-3': 1111, '2023-4': 2132, '2023-5': 2999 }, |
| | | state2: { '2023-1': 12312, '2023-2': 2222, '2023-3': 2111, '2023-4': 2132, '2023-5': 2999 } |
| | | }, |
| | | { |
| | | name: '银杏街道', |
| | | state: { '2023-1': 1000, '2023-2': 2000, '2023-3': 1233, '2023-4': 2132, '2023-5': 12 }, |
| | | state2: { '2023-1': 1231, '2023-2': 121, '2023-3': 123, '2023-4': 321, '2023-5': 2999 } |
| | | }, |
| | | { |
| | | name: '石羊镇', |
| | | state: { '2023-1': 1000, '2023-2': 8334, '2023-3': 1233, '2023-4': 123, '2023-5': 0 }, |
| | | state2: { '2023-1': 12312, '2023-2': 512, '2023-3': 241, '2023-4': 2132, '2023-5': 2999 } |
| | | }, |
| | | ]); |
| | | let acitveData = ref(testData1.value[0]); |
| | | |
| | |
| | | dimensions: ['name', 'state1', 'state2', 'state3'], |
| | | source: testData.value |
| | | }, |
| | | xAxis: { type: 'category', axisTick: false }, |
| | | yAxis: {}, |
| | | xAxis: { |
| | | type: 'category', |
| | | axisTick: false, |
| | | axisLabel: { |
| | | fontSize: 14, |
| | | color: '#4D76B0', |
| | | margin: 15 |
| | | }, |
| | | }, |
| | | yAxis: { |
| | | axisLabel: { |
| | | fontSize: 14, |
| | | color: '#4D76B0', |
| | | }, |
| | | }, |
| | | series: [ |
| | | { |
| | | type: 'bar', |
| | |
| | | tooltip: { |
| | | show: true, |
| | | trigger: 'axis', |
| | | backgroundColor: '#000001cc', |
| | | borderWidth: 0, |
| | | textStyle: { |
| | | color: '#4D76B0', |
| | | fontSize: 16 |
| | | }, |
| | | axisPointer: { |
| | | type: 'shadow', |
| | | |
| | | lable: { |
| | | color: '#000000' |
| | | } |
| | | }, |
| | | padding: [20, 25], |
| | | formatter: function (params) { |
| | | return params[0].name + '<br/>' + params[0].seriesName + ':' + `<span style="color:rgba(207, 178, 73, 1)">${params[0].value}</span>` + '<br/>' + params[1].seriesName + ':' + `<span style="color:rgba(43, 176, 109, 1)">${params[1].value}</span>`; |
| | | } |
| | | }, |
| | | grid: { |
| | |
| | | }, |
| | | xAxis: { |
| | | type: 'category', |
| | | data: Object.keys(acitveData.value.state) |
| | | data: Object.keys(acitveData.value.state), |
| | | axisLabel: { |
| | | fontSize: 14, |
| | | color: '#4D76B0', |
| | | margin: 15 |
| | | }, |
| | | axisTick: false |
| | | }, |
| | | yAxis: { |
| | | type: 'value' |
| | | type: 'value', |
| | | axisLabel: { |
| | | fontSize: 14, |
| | | color: '#4D76B0' |
| | | } |
| | | }, |
| | | series: [ |
| | | { |
| | |
| | | .item { |
| | | margin: 0 8px; |
| | | padding: 10px 14px; |
| | | font-size: 12px; |
| | | font-size: 14px; |
| | | background: rgba(67, 102, 155, 0.4); |
| | | border: 1px solid rgba(47, 91, 157, 0.8); |
| | | flex-shrink: 0; |
| | | color: #5B83BD; |
| | | } |
| | | |
| | | .select-active { |
| | | color: #fff; |
| | | color: #fff; |
| | | } |
| | | |
| | | .item:last-child { |
| | | margin-right: 0; |
| | | } |