123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101 |
- <template>
- <div ref="chartRef" :style="{ height, width }"></div>
- </template>
- <script lang="ts">
- import { defineComponent, onMounted, ref, Ref } from 'vue';
- import { useECharts } from '/@/hooks/web/useECharts';
- import { basicProps } from './props';
- export default defineComponent({
- name: 'AnalysisLine',
- props: basicProps,
- setup() {
- const chartRef = ref<HTMLDivElement | null>(null);
- const { setOptions } = useECharts(chartRef as Ref<HTMLDivElement>);
- onMounted(() => {
- setOptions({
- // title: {
- // text: '产品成交额',
- // },
- tooltip: {
- trigger: 'axis',
- padding: 3,
- backgroundColor: 'rgba(0, 0, 0, .6)',
- borderColor: '#777',
- borderWidth: 1,
- },
- legend: {
- icon: 'rect',
- itemWidth: 15,
- itemHeight: 4,
- left: 80,
- top: 0,
- orient: 'horizontal',
- data: ['产品一', '产品二'],
- },
- grid: {
- left: '3%',
- right: '4%',
- bottom: '3%',
- containLabel: true,
- },
- xAxis: {
- type: 'category',
- boundaryGap: false,
- axisTick: {
- inside: true, // 刻度朝内
- },
- data: [
- '一月',
- '二月',
- '三月',
- '四月',
- '五月',
- '六月',
- '七月',
- '八月',
- '九月',
- '十月',
- '十一月',
- '十二月',
- ],
- },
- yAxis: {
- type: 'value',
- axisTick: {
- inside: true, // 刻度朝内
- },
- },
- series: [
- {
- name: '产品一',
- type: 'line',
- itemStyle: {
- normal: {
- color: '#5B8FF9',
- },
- },
- // areaStyle: {},
- data: [330, 132, 101, 134, 90, 230, 210, 150, 232, 234, 230, 400],
- animationDuration: 4000,
- },
- {
- name: '产品二',
- type: 'line',
- itemStyle: {
- normal: {
- color: '#55D187',
- },
- },
- data: [220, 182, 191, 234, 290, 330, 310, 330, 232, 201, 330, 190],
- animationDuration: 4000,
- },
- ],
- });
- });
- return { chartRef };
- },
- });
- </script>
|