当前位置: 首页 > news >正文

用echarts画天气预报

如图

上代码

<template><div id="temp15day"></div>
</template><script setup>
import * as echarts from "echarts";
const initChart = () => {const machart = echarts.init(document.getElementById("temp15day"));var option = {grid: {show: true,backgroundColor: 'transparent',opacity: 0.3,borderWidth: '0',top: '220',bottom: '1%'},tooltip: {trigger: 'axis'},legend: {show: false},xAxis: [// 星期{type: 'category', // 类型为类目轴,适用于离散数据boundaryGap: false, // 不留空白,线条从第一个点开始position: 'top', // 位置在顶部offset: 133, // 与图表上边缘的距离zlevel: 100, // z轴层级,用于控制显示顺序axisLine: {show: false // 不显示坐标轴线},axisTick: {show: false // 不显示刻度线},axisLabel: {interval: 0, // 每个标签都显示formatter: ['{a|{value}}' // 使用 rich text 格式化标签].join('\n'), // 换行符rich: {a: {// color: 'white', // 标签颜色fontSize: 14 // 字体大小}}},nameTextStyle: { // 名称文本样式,当前为空},data: ["周一", "周二", "周三", "周四", "周五", "周六", "周日"]},// 日期{type: 'category', // 同样是类目轴boundaryGap: false, // 不留空白position: 'top', // 位置在顶部offset: 110, // 与图表上边缘的距离zlevel: 100, // z轴层级axisLine: {show: false // 不显示坐标轴线},axisTick: {show: false // 不显示刻度线},axisLabel: {interval: 0, // 每个标签都显示formatter: ['{a|{value}}' // 使用 rich text 格式化标签].join('\n'), // 换行符rich: {a: {// color: 'white', // 标签颜色fontSize: 14 // 字体大小}}},// nameTextStyle: {//     fontWeight: 'bold', // 字体加粗//     fontSize: 19 // 字体大小// },data: ["25日", "26日", "27日", "28日", "29日", "30日", "31日"]},// 天气图标{type: 'category',boundaryGap: false,//不留空白,数据点从第一个点开始position: 'top',//将坐标轴放置在图表的顶部。offset: 40,//设置坐标轴与图表上边缘的距离。zlevel: 100,//设置层级,使该坐标轴在其他元素之上显示。axisLine: {show: false//不显示坐标轴线。},axisTick: {show: false//不显示刻度线。},axisLabel: {interval: 0,//所有标签都会显示formatter: function (value, index) {return '{' + index + '| }\n{b|' + value + '}'// 签格式为 '{index| }\n{b|value}',其中 {index| } 用于显示天气图标,{b|value} 用于显示天气名称。},rich: {// rich: 定义每个标签的样式。// 0 到 6: 每个索引对应不同的天气图标,设置了背景图片(例如小雨、阴、多云等),每个图标大小为 40x40 像素。// b: 定义天气状态文字的样式,包括字体大小和行高。0: {backgroundColor: {image: 'https://d.scggqx.com/forecast/img/小雨.png'},height: 40,width: 40},1: {backgroundColor: {image: 'https://d.scggqx.com/forecast/img/小雨.png'},height: 40,width: 40},2: {backgroundColor: {image: 'https://d.scggqx.com/forecast/img/阴.png'},height: 40,width: 40},3: {backgroundColor: {image: 'https://d.scggqx.com/forecast/img/小雨.png'},height: 40,width: 40},4: {backgroundColor: {image: 'https://d.scggqx.com/forecast/img/多云.png'},height: 40,width: 40},5: {backgroundColor: {image: 'https://d.scggqx.com/forecast/img/小雨.png'},height: 40,width: 40},6: {backgroundColor: {image: 'https://d.scggqx.com/forecast/img/小雨.png'},height: 40,width: 40},b: {// color: 'white',fontSize: 12,lineHeight: 30,height: 20}}},// nameTextStyle: {//     fontWeight: 'bold',//     fontSize: 14// },// data: this.weatherdata.weatherdata: ['', '', '', '', '', '', '']// data: ["小雨", "小雨", "阴", "小雨", "多云", "小雨", "小雨"]},  // 风力风向{type: 'category',boundaryGap: false,position: 'top',offset: 50,zlevel: 100,axisLine: {show: false},axisTick: {show: false},axisLabel: {interval: 0,formatter: ['{a|{value}}'].join('\n'),rich: {img: {backgroundColor: {image: 'https://example.com/icon.png' // 替换为你的图标URL},width: 16,height: 16,align: 'center'},a: {// color: 'white',fontSize: 12}}},nameTextStyle: {},data: ["3-4级", "<4级", "3-4级", "3-4级", "3-4级", "3-4级", "3-4级"]},// 空气质量{type: 'category',boundaryGap: false,position: 'top',offset: 20,zlevel: 100,axisLine: {show: false},axisTick: {show: false},axisLabel: {interval: 0,formatter: ['{a|{value}}'].join('\n'),rich: {'优': {backgroundColor: '#388E3C', // 深绿色color: 'white',padding: [4, 8],borderRadius: 4,fontSize: 12},'良': {backgroundColor: '#A5D6A7', // 浅绿色color: 'white',padding: [4, 8],borderRadius: 4,fontSize: 12}}},data: ["优", "良", "良", "良", "良", "良", "良"]},],yAxis: {type: 'value',show: false,//控制是否显示纵坐标轴axisLabel: {//设置纵坐标轴的标签样式。formatter: '{value} °C',color: 'white'//设置纵坐标轴标签的颜色为白色}},series: [{name: '最高气温',type: 'line', // 系列类型,这里是折线图data: ["16.3", "16.2", "17.6", "14.2", "17.6", "15.7", "14.3"], // 数据点symbol: 'emptyCircle', // 数据点的形状symbolSize: 10, // 数据点的大小showSymbol: true, // 显示数据点smooth: true, // 折线是否平滑itemStyle: { // 数据点样式normal: {color: '#C95843' // 数据点的颜色}},label: { // 数据标签show: true, // 是否显示position: 'top', // 标签位置formatter: '{c} °C' // 标签内容,这里显示温度},lineStyle: { // 折线样式width: 1, // 线宽// color: 'white' // 线颜色(这里注释掉了)},areaStyle: { // 区域样式(通常用于填充区域)opacity: 1, // 透明度color: 'transparent' // 填充颜色(这里是透明的)}},{name: '最低气温',type: 'line',data: ["13.4", "12.8", "13.5", "12.5", "12.4", "13.2", "13"],symbol: 'emptyCircle', // 数据点的形状symbolSize: 10, // 数据点的大小showSymbol: true, // 显示数据点smooth: true, // 折线是否平滑itemStyle: { // 数据点样式normal: {color: 'blue' // 数据点的颜色}},label: {// 数据标签show: true, // 是否显示position: 'bottom', // 标签位置formatter: '{c} °C' // 标签内容// color: 'white',},lineStyle: { // 折线样式width: 1, // 线宽// color: 'white' // 线颜色},areaStyle: { // 区域样式opacity: 1, // 透明度color: 'transparent' // 填充颜色(这里是透明的)}},]}machart.setOption(option);
};
setTimeout(() => {initChart();
}, 800);
</script><style scoped>
#temp15day {width: 100%;height: 45vh;
}
</style>

 vue3写的,直接粘过去就可以用

改了天气的图标

    0: {backgroundColor: {image: 'https://d.scggqx.com/forecast/img/晴.png'},height: 40,width: 40},1: {backgroundColor: {image: 'https://d.scggqx.com/forecast/img/大雨.png'},height: 40,width: 40},

如下

相关文章:

用echarts画天气预报

如图 上代码 <template><div id"temp15day"></div> </template><script setup> import * as echarts from "echarts"; const initChart () > {const machart echarts.init(document.getElementById("temp15day&q…...

如果要存IP地址,用什么数据类型比较好?(java)

存储IP地址需要考虑到IPv4和IPv6的不同特点&#xff0c;以及系统的需求。我们可以从字符串、整数和二进制三种常用方式来讨论如何高效存储和处理IP地址。 1. IPv4存储 1.1 字符串存储 优点&#xff1a;直观易读&#xff0c;简单易用。缺点&#xff1a;占用更多的存储空间&am…...

LinkedList源码解读

这里写目录标题 简介源码解读基础变量构造函数LinkedList()LinkedList(Collection<? extends E> c) 总结 简介 LinkedList 是对 Java 集合框架中 List 接口的一种具体实现&#xff0c;归属于线性数据结构的范畴。其核心内部结构是通过双向链表&#xff08;double-linke…...

springboot feign-httpclient 连接池配置

在默认情况下 spring cloud feign 在进行各个子服务之间的调用时&#xff0c;http组件使用的是jdk的HttpURLConnection&#xff0c;没有使用线程池。有2种可选的线程池&#xff1a;HttpClient 和 OKHttp 在Spring Boot项目中使用Feign并配置HttpClient连接池&#xff0c;你需要…...

电汽车充电革命:充电桩的过去现在与未来

电动汽车充电革命&#xff1a;中国充电桩行业的过去、现在与未来 一、发展历程概述 中国充电桩行业的发展历程可划分为以下几个阶段&#xff1a; 1. 初始期&#xff08;2006-2008年&#xff09;&#xff1a;在此阶段&#xff0c;国家队主导市场&#xff0c;主要参与者包括国…...

windows server 2019中安装.net framework 3.5功能出错

转自金蝶云社区|财务金融企业信息化|IT精英人脉圈子-金蝶云社区官网 [故障现象] Windows server 2019系统安装net framework3.5时默认情况下会出现报错,提示错误:error 0x800F0954。 问题说明: 根据网上资料尝试了几种方式都不行: (1)离线下载net framework3.5进行安装(不…...

vscode gitlens收费破解

首先打开vscode 插件栏 搜索GitLens 找到对应插件 这里我已经安装完成&#xff0c;如果未安装的点击install 并且下载指定版本V15.1.0 不然后续操作 不生效 找到对应面板 点击查看GitLens 安装完成后&#xff0c;并不能立即使用 显示一下内容&#xff0c;需要付费 这里很关键&…...

IPv 4

IP协议 网络层主要由IP&#xff08;网际协议&#xff09;和ICMP&#xff08;控制报文协议&#xff09;构成&#xff0c;对应OSI中的网络层&#xff0c;网络层以实现逻辑层面点对点通信为目的。目前应用最广泛的IP协议为IPv4 基本概念给出 主机&#xff1a;配有IP地址但不具有路…...

SQL 注入漏洞 - 学习手册

0x01&#xff1a;SQL 注入前导知识 0x0101&#xff1a;SQL 注入 —— MySQL 数据库概述 知识速查&#xff1a;SQL 注入前导知识 SQL 注入 —— MySQL 数据库概述 获取数据库名 : select schema_name from information_schema.schemata;获取数据表名 : select table_name from …...

AVLTree 旋转笔记(根据平衡因子插入的公式,贼好理解)

平衡因子 avltree是一棵每个节点的左右子树的高度差不超过1的二叉树搜索树&#xff0c;对于avltree最重要的就是对平衡因子的控制。 对于旋转我们重点要注意的是三个节点&#xff0c;以左旋举例&#xff0c;需要注意的就是parent&#xff0c;subr&#xff0c;subrl。而旋转的方…...

STM32(十八):SPI通信

SPI通信&#xff1a; SPI&#xff08;Serial Peripheral Interface&#xff09;是由Motorola公司开发的一种通用数据总线 四根通信线&#xff1a;SCK&#xff08;Serial Clock&#xff09;、MOSI&#xff08;Master Output Slave Input&#xff09;主机输出从机输入、MISO&…...

Redis持久化机制(RDBAOF详解)

目录 一、Redis持久化介绍二、Redis持久化方式1、RDB持久化(1) 介绍(2) RDB持久化触发机制(3) RDB优点和缺点(4) RDB流程 2、AOF(append only file)持久化(1) 介绍(2) AOF优点和缺点(3) AOF文件重写(4) AOF文件重写流程 三、AOF和RDB持久化注意事项 一、Redis持久化介绍 Redis…...

蛋白质结构中pdbx_strand_id和entity_id相互转化

在蛋白质结构中,entity_id 和 pdbx_strand_id 表示的是不同的概念,涉及到不同层次的信息。 1. entity_id (实体 ID): 定义:entity_id 标识蛋白质结构中的一个“实体”(entity)。一个实体可以是一个多肽链、DNA 链、RNA 链,或者某些小分子(如辅因子、配体等)。特点:每…...

【父子线程传值TransmittableThreadLocal使用踩坑-及相关知识拓展】

文章目录 一.业务背景二.TransmittableThreadLocal是什么&#xff1f;三.问题复现1.定义注解DigitalAngel2.定义切面3.TransmittableThreadLocal相关4.线程池配置信息5.Controller6.Service7.测试结果8.问题分析9 解决办法及代码改造10.最终测试&#xff1a; 四.与 ThreadLocal…...

03 快乐树

快乐树 我们由题可以得出结论&#xff1a;一共有三种情况&#xff0c;但实际中第三中情况不存在。 证明第三中情况不存在&#xff1a; 我敲的代码 public boolean isHappy(int n) {int slown;int fastn;while(true) {int sum0;while(slow!0) {sum(slow%10)*(slow%10);slow/1…...

springboot+react实现移动端相册(上传图片到oss/ 批量删除/ 查看图片详情等功能)

相册页面及功能展示&#xff1a; react前端结构及代码&#xff1a; Java后端结构及代码 数据库结构&#xff1a; photo&#xff1a; user 这是首个利用AI自有知识构建的简易相册系统&#xff0c;项目是react构造前端spring boot构造后端。 前端有四个主要页面&#xff1…...

Python、R语言Lasso、Ridge岭回归、XGBoost分析Airbnb房屋数据:旅游市场差异、价格预测|数据分享...

全文链接&#xff1a;https://tecdat.cn/?p37839 分析师&#xff1a;Kefan Yu 在大众旅游蓬勃发展的背景下&#xff0c;乡村旅游已成为推动乡村经济、社会和文化发展的关键力量。当前&#xff0c;乡村旅游接待设施主要以招待所、小宾馆和农家乐等形式存在。然而&#xff0c;一…...

Spring Boot驱动的交互式作业管理系统:师生共评功能实现

1系统概述 1.1 研究背景 如今互联网高速发展&#xff0c;网络遍布全球&#xff0c;通过互联网发布的消息能快而方便的传播到世界每个角落&#xff0c;并且互联网上能传播的信息也很广&#xff0c;比如文字、图片、声音、视频等。从而&#xff0c;这种种好处使得互联网成了信息传…...

基于SSM的旅游网站【附源码】

基于SSM的旅游网站&#xff08;源码L文说明文档&#xff09; 目录 4 系统设计 4.1 系统概要设计 4.2 系统功能结构设计 4.3 数据库设计 4.3.1 数据库E-R图设计 4.3.2 数据库表结构设计 5 系统实现 5.1 管理员功能介绍 5.1.1 用户管理 5.1.2 …...

Python实现将目标文本批量存入Word,并将文本段落的开头进行缩进处理(11)

前言 本文是该专栏的第11篇,后面会持续分享Python办公自动化干货知识,记得关注。 在用python对目标文本进行批量自动化操作的时候,你可能会遇到这样的需求——“现有大批量的文本内容,需要通过python将其批量存入docx(word)文档中,而且每个段落的开头需要进行缩进处理”…...

mongodb源码分析session执行handleRequest命令find过程

mongo/transport/service_state_machine.cpp已经分析startSession创建ASIOSession过程&#xff0c;并且验证connection是否超过限制ASIOSession和connection是循环接受客户端命令&#xff0c;把数据流转换成Message&#xff0c;状态转变流程是&#xff1a;State::Created 》 St…...

ETLCloud可能遇到的问题有哪些?常见坑位解析

数据集成平台ETLCloud&#xff0c;主要用于支持数据的抽取&#xff08;Extract&#xff09;、转换&#xff08;Transform&#xff09;和加载&#xff08;Load&#xff09;过程。提供了一个简洁直观的界面&#xff0c;以便用户可以在不同的数据源之间轻松地进行数据迁移和转换。…...

DingDing机器人群消息推送

文章目录 1 新建机器人2 API文档说明3 代码编写 1 新建机器人 点击群设置 下滑到群管理的机器人&#xff0c;点击进入 添加机器人 选择自定义Webhook服务 点击添加 设置安全设置&#xff0c;详见说明文档 成功后&#xff0c;记录Webhook 2 API文档说明 点击设置说明 查看自…...

打手机检测算法AI智能分析网关V4守护公共/工业/医疗等多场景安全应用

一、方案背景​ 在现代生产与生活场景中&#xff0c;如工厂高危作业区、医院手术室、公共场景等&#xff0c;人员违规打手机的行为潜藏着巨大风险。传统依靠人工巡查的监管方式&#xff0c;存在效率低、覆盖面不足、判断主观性强等问题&#xff0c;难以满足对人员打手机行为精…...

LCTF液晶可调谐滤波器在多光谱相机捕捉无人机目标检测中的作用

中达瑞和自2005年成立以来&#xff0c;一直在光谱成像领域深度钻研和发展&#xff0c;始终致力于研发高性能、高可靠性的光谱成像相机&#xff0c;为科研院校提供更优的产品和服务。在《低空背景下无人机目标的光谱特征研究及目标检测应用》这篇论文中提到中达瑞和 LCTF 作为多…...

数据结构:泰勒展开式:霍纳法则(Horner‘s Rule)

目录 &#x1f50d; 若用递归计算每一项&#xff0c;会发生什么&#xff1f; Horners Rule&#xff08;霍纳法则&#xff09; 第一步&#xff1a;我们从最原始的泰勒公式出发 第二步&#xff1a;从形式上重新观察展开式 &#x1f31f; 第三步&#xff1a;引出霍纳法则&…...

如何把工业通信协议转换成http websocket

1.现状 工业通信协议多数工作在边缘设备上&#xff0c;比如&#xff1a;PLC、IOT盒子等。上层业务系统需要根据不同的工业协议做对应开发&#xff0c;当设备上用的是modbus从站时&#xff0c;采集设备数据需要开发modbus主站&#xff1b;当设备上用的是西门子PN协议时&#xf…...

IP选择注意事项

IP选择注意事项 MTP、FTP、EFUSE、EMEMORY选择时&#xff0c;需要考虑以下参数&#xff0c;然后确定后选择IP。 容量工作电压范围温度范围擦除、烧写速度/耗时读取所有bit的时间待机功耗擦写、烧写功耗面积所需要的mask layer...

初级程序员入门指南

初级程序员入门指南 在数字化浪潮中&#xff0c;编程已然成为极具价值的技能。对于渴望踏入程序员行列的新手而言&#xff0c;明晰入门路径与必备知识是开启征程的关键。本文将为初级程序员提供全面的入门指引。 一、明确学习方向 &#xff08;一&#xff09;编程语言抉择 编…...

VUE3 ref 和 useTemplateRef

使用ref来绑定和获取 页面 <headerNav ref"headerNavRef"></headerNav><div click"showRef" ref"buttonRef">refbutton</div>使用ref方法const后面的命名需要跟页面的ref值一样 const buttonRef ref(buttonRef) cons…...