vue3+ts做echarts做一个简单的折线渐变图

2023-05-16

vue3做echarts做一个简单的折线渐变图

效果

在这里插入图片描述
代码:

</template>
<div>
      <div class="date-change">
        <el-date-picker size="small" v-model="dateValue" value-format="YYYY-MM-DD" type="daterange" range-separator="" start-placeholder="开始日期" end-placeholder="截至日期" format="YYYY-MM-DD" @change="changeDate($event)" />
      </div>
      <v-chart :option="lineData" :theme="theme" :autoresize="autoResize" />
    </div>
<template>
<script lang="ts">
import { defineComponent, reactive, toRefs } from "vue";
import { CanvasRenderer } from "echarts/renderers";
import { BarChart, LineChart, PieChart, MapChart, RadarChart, ScatterChart, EffectScatterChart, LinesChart } from "echarts/charts";
import { GridComponent, PolarComponent, GeoComponent, TooltipComponent, LegendComponent, TitleComponent, VisualMapComponent, DatasetComponent, ToolboxComponent, DataZoomComponent } from "echarts/components";
import VChart, { THEME_KEY } from "vue-echarts";
use([BarChart, LineChart, PieChart, MapChart, RadarChart, ScatterChart, EffectScatterChart, LinesChart, GridComponent, PolarComponent, GeoComponent, TooltipComponent, LegendComponent, TitleComponent, VisualMapComponent, DatasetComponent, CanvasRenderer, ToolboxComponent, DataZoomComponent]);
export default defineComponent({
  components: {
    VChart
  },
  provide: {
    [THEME_KEY]: "westeros"
  },
  setup() {
    const data = reactive({
    lineData: {
        tooltip: {
          // show:true,
          // 悬浮显示格式
          formatter: "{a} <br/>{b} : {c}% <br/> {a1} <br/>  {b1} : {c1}%",
          trigger: "axis" // 触发类型,在饼形图中为item
        },
        color: ["#377AF4", "#F5AE3D"], //标题颜色
        legend: {
          textStyle: {
            // 设置图例字体
            color: "#000000",
            fontSize: "12"
          },
          //线条样式 圆角
          icon: "circle",
          left: "center",
          data: ["计划负载", "实际负载"]
        },
        xAxis: {
          name: "日期",
          boundaryGap: false,
          type: "category",
          data: []
          //设置X轴 超出自动隐藏日期
          // "axisLabel":{
          //   interval: 1.5
          // }
        },
        yAxis: {
          type: "value",
          max: 100,
          axisLabel: {
            //Y轴百分比
            formatter: function (val: number) {
              return val + "%";
            }
          }
        },
        series: [
          {
            name: "计划负载",
            type: "line",
            smooth: true,
            label: {
              normal: {
                //开启折点显示数据
                // show: true,
                position: "top",
                textStyle: {
                  color: "#377AF4",
                  width: 2
                }
              }
            },
            areaStyle: {
              color: {
                //线性渐变
                type: "linear",
                x: 0,
                y: 0,
                x2: 0,
                y2: 1,
                colorStops: [
                  {
                    offset: 0,
                    color: "rgba(185, 210, 255, 0.43)" // 0% 处的颜色
                  },
                  {
                    offset: 1,
                    color: "rgba(237, 243, 255, 0)" // 100% 处的颜色
                  }
                ],
                global: false // 缺省为 false
              }
            },
            data: []
          },
          {
            type: "line",
            name: "实际负载",
            smooth: true,
            label: {
              normal: {
                //开启折点显示数据
                // show: true,
                position: "top",
                textStyle: {
                  //折线颜色
                  color: "#377AF4",
                  width: 2
                }
              }
            },
            areaStyle: {
              color: {
                //线性渐变
                x: 0,
                y: 0,
                x2: 0,
                y2: 1,
                type: "linear",
                colorStops: [
                  {
                    offset: 0,
                    color: "rgba(255, 231, 193, 1)" // 0% 处的颜色
                  },
                  {
                    offset: 1,
                    color: "rgba(255, 246, 236, 0)" // 100% 处的颜色
                  }
                ],
                global: false // 缺省为 false
              }
            },
            data: []
          }
        ] as any
      } as any,
      theme: "" as any,
      autoResize: true as boolean
    });
    return {
      ...toRefs(data)
    };
  }
  });
</script>
<style lang="less" scoped>
.echarts {
  position: absolute;
  width: 100%;
  height: 100%;
}
.date-change {
  position: absolute;
  right: 10px;
  z-index: 1;
}
</style>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

vue3+ts做echarts做一个简单的折线渐变图 的相关文章

  • Linux系统下运行bash脚本提示/usr/bin/env: ‘bash\r’: No such file or directory

    1 问题现象 在Linux系统中使用 searchsploit 启动 xff0c 运行失败 xff0c 并报错提示如下所示 xff1a 2 错误原因 xff1a 主要是应用bash后面多了 r 字符的原因 xff0c 在Linux终端下 x
  • 面试:每发送一个http请求就要建立一个tcp连接吗(非持久连接/持久连接)

    非持久连接 xff1a HTTP 1 0 中 的首部字段Connection 默认值为 close xff0c 即每次请求都会重新建立和断开 TCP 连接 持久连接 xff1a HTTP 1 1 中 的首部字段Connection 默认值为
  • 实例:用C#.NET手把手教你做微信公众号开发(16)--事件消息处理之点击菜单2

    微信用户点击菜单时 xff0c 会通过微信服务器转发两种事件给你的服务器 xff0c 一种是拉取消息时的事件推送 xff1b 另一种是跳转链接时的事件推送 上篇讲了第一种 xff0c 本篇先讲第二种 一 消息格式 推送XML数据包示例 xf
  • 合理清除AlibabaProtect进程

    1 在 任务管理器 的 进程选项中 xff0c 找到AlibabaProtect进程 xff0c 单击后 xff0c 右键选择 打开文件所在位置 xff0c 找到该进程对应文件所在位置 xff0c 并将其上级目录做成 桌面快捷方式 xff0
  • Sublime Text 4安装使用(完整教程)

    Sublime Text 4安装使用 安装使用语言汉化 OK啦 xff0c 觉得有用的点个赞吧 xff01 xff01 xff01 写这篇博客的意义希望能够将我走过的路 踩过的坑记录下来 在后来在遇到的时候能够更好的翻阅 未经允许 xff0
  • Xlaunch启动后无法显示图形界面,提示connection refused

    解决方案 xff1a 重启远程端
  • 【PR】零基础快速入门教程

    PR 零基础快速入门教程 PR xff08 Premiere xff09 能做什么 xff1f PR欢迎界面及新建项目工作区及窗口说明导入文件建立序列视频剪辑添加字幕导出视频 使用软件 xff1a Premiere2020 新年卷起来 xf
  • 【PR】源窗口

    PR 源窗口 源窗口粗剪源窗口按钮功能标记按钮出入点相关插入与覆盖插入覆盖 导出帧 使用软件 xff1a Premiere2020 源窗口粗剪 我们手上可能有一些很长的视频 xff0c 但是我就想要其中的几段 xff0c 这个时候粗剪就很方
  • 【PR】时间轴窗口

    PR 时间轴窗口 时间轴窗口工具按钮 视频轨道切换轨道输出切换同步锁定目标切换轨道锁定轨道对插入和覆盖进行源修补 工具按钮 音频轨道静音轨道独奏轨道画外音录制 时间轴窗口基础操作添加轨道查看完成视频和音频缩放轨道删除轨道 添加关键帧 使用软
  • 【PR】来,一起做一个简单的剪辑视频吧

    PR 来 xff0c 一起做一个简单的剪辑视频吧 前言新建项目导入素材创建序列裁剪视频视频导入序列 图片背景音频处理多视频素材处理添加字幕导出上传学了上面能做到什么程度 xff1f 可以看一下我用上面的方法做出成品 新手教程哈 xff0c
  • 【PR】视频剪裁

    PR 视频剪裁 把素材文件导入PR问题1 xff1a 删除多余部分 xff08 主要是录制范围 xff09 导出视频 xff08 问题1解决方案看我 xff09 问题2 导出的视频还有黑边导出视频 xff08 问题2解决方案看我 xff09
  • 【PR】图片处理

    PR 图片处理 导入图片将图片文件拖拽进时间轴点击图片选择效果 xff08 时间轴上的那个条 xff09 改变图片位置修改图片大小图片不透明度旋转与锚点 xff08 视频层 xff09 图层 PR不光能导入视频 xff0c 还可以导入图片
  • 【PR】音频处理及过度效果

    PR 音频处理及过度效果 导入音频插入时间轴中的A轨道 xff08 声音轨道 xff09 音频处理调整音量 音频剪贴音频过度效果淡入 xff0c 淡出 xff0c 过度淡入淡出过度 工具按钮 音频轨道 xff08 不充内容 xff0c 可以
  • 实例:用C#.NET手把手教你做微信公众号开发(17)--公众号主动给粉丝发信息之模板消息

    前面讲了那么多 xff0c 都是微信用户主动向公众号发送信息或某个操作触发公众号响应并给予用户回复 如果在微信用户没有主动发起互动的情况下 xff0c 公众号应该如何向微信用户发送消息呢 xff1f 本篇给出一种解决方案 xff1a 模板消
  • 【PR】视频转场与视频粗剪

    PR 视频转场与视频粗剪 视频转场转场使用方法 粗剪与标记 xff08 多个视频合并的小技巧 xff0c 可以不看 xff09 粗剪标注 今天我们来搞一下视频 xff0c 主要是搞一下转场效果 转场 xff1a 让不同场景的画面间过渡更加自
  • 【PR】字幕处理

    PR 字幕处理 添加字幕新建字幕基础设置多字幕添加 其他调整基础效果 效果控件 字幕特效 PR2022版本有字幕插件 xff0c 可以更轻松的处理字幕 我用的是PR2020 xff0c 没有这个功能 xff0c 只能一个一个添加 xff0c
  • 【外设零基础通用教程】GPIO 上

    外设零基础通用教程 GPIO 上 视频 文章结构外设 xff1a GPIO代码编写GPIO输入方法GPIO输出方法 视频地址 xff1a 咸鱼的外设通用教程之GPIO 本教程适合 xff1a 硬件零基础纯小白 上手了硬件不知从何开始 xff
  • 【外设零基础通用教程】GPIO 下

    外设零基础通用教程 GPIO 下 使用方法GPIO 值输入读取值输出设置值 GPIO输入输出应用GPIO输入应用GPIO输出应用文档使用 理论补充输出方式推挽输出开漏输出 上篇连接 xff1a 外设零基础通用教程 GPIO 上 xff0c
  • 硬件外设使用方法——GPIO

    硬件外设使用 GPIO用法 GPIO基本概念GPIO应用pyb与micropython什么是pyb什么是micropythonpyb与micropython关系 GPIO在micropython中的用法什么是pyb库pyb库中的GPIO用法
  • 【硬件外设使用】——ADC

    硬件外设使用 ADC ADC基本概念ADC使用方法pyb adcmachine adc ADC可用的传感器 ADC基本概念 ADC是模拟数字转换器 xff08 Analog to Digital Converter xff09 的缩写 xf

随机推荐