Pyecharts系列课程04——折线图/面积图(Line)
本章我们学习在Pyecharts中折线图(Line)的使用。折线图通用应用于数据的趋势分析。
折线图
我们现在有两组数据,x_data是2024年的月份,y_data为对应张三甲每个月的用电量。
# 家庭每月用电量趋势
x_data = ["1月", "2月", "3月", "4月", "5月", "6月", "7月", "8月", "9月", "10月", "11月", "12月"
]
y_data = [120, 140, 118, 98, 91, 87, 152, 214, 198, 154, 121, 108]
在Pyecharts中绘制直方图,首先我们需要引入我们需要的图表,可以通过如下代码:
from pyecharts.charts import Line
在引入之后我们需要做的便是新建一个图表实例,然后将我们的x_data,y_data添加至图表中,在直角坐标系图表中,都是采用add_xaxis,add_yaxis两个方法分别来添加数据,这点与之前的直方图一致。
在add_yaxis中有两个必传的参数,一个是y_axis是我们要传的数据,另一个参数series_name为系列名称。
from pyecharts.charts import Line# 新建一个图表命名为chart
chart = Line()
# 添加数据
chart.add_xaxis(x_data)
chart.add_yaxis(series_name="用电量", y_axis=y_data)
在Pyecharts中都提供了默认配置,在不做任何配置的情况下,我们的图表就已经完成了,便可以通过.render_notebook()将图表渲染至我们的notebook中了。
from pyecharts.charts import Line# 家庭每月用电量趋势
x_data = ["1月", "2月", "3月", "4月", "5月", "6月", "7月", "8月", "9月", "10月", "11月", "12月"
]
y_data = [120, 140, 118, 98, 91, 87, 152, 214, 198, 154, 121, 108]
# 新建一个图表命名为chartchart = Line()
# 添加数据
chart.add_xaxis(x_data)
chart.add_yaxis(series_name="用电量", y_axis=y_data)chart.render_notebook()
效果如下:

*如果是在非notebool的环境中,我们需要将.render_notebook()换成.render()。
面积图
- 在Pyecharts中没有单独的面积图模块,其实面积图就是在折线图的基础上加上颜色的填充。
- 我们还是在之前的代码基础上进行编辑。在
add_yaxis()方法中有一个参数areastyle_opts,即配置区域样式效果的,默认效果是设置的透明度为0,我们只需设置为大于0小于等于1的值即可。
from pyecharts.charts import Line
import pyecharts.options as opts# 家庭每月用电量趋势
x_data = ["1月", "2月", "3月", "4月", "5月", "6月", "7月", "8月", "9月", "10月", "11月", "12月"
]
y_data = [120, 140, 118, 98, 91, 87, 152, 214, 198, 154, 121, 108]
# 新建一个图表命名为chartchart = Line()
# 添加数据
chart.add_xaxis(x_data)
chart.add_yaxis(series_name="用电量",y_axis=y_data,areastyle_opts=opts.AreaStyleOpts(opacity=0.6))chart.render_notebook()

常用配置
线条样式
颜色/线宽
通过参数linestyle_opts进行线条样式配置,颜色/线宽可通过LineStyleOpts中的color, width进行配置,具体参考如下代码;
from pyecharts.charts import Line
import pyecharts.options as opts# 家庭每月用电量趋势
x_data = ["1月", "2月", "3月", "4月", "5月", "6月", "7月", "8月", "9月", "10月", "11月", "12月"
]
y_data = [120, 140, 118, 98, 91, 87, 152, 214, 198, 154, 121, 108]chart = Line()chart.add_xaxis(x_data)
chart.add_yaxis("用电量",y_data,areastyle_opts=opts.AreaStyleOpts(color='red', opacity=0.3),linestyle_opts=opts.LineStyleOpts(width=2, color='red'))chart.render_notebook()

这里需要注意一点,通过linestyle_opts修改的是线条颜色,通过上方图片我们也能看到,标记点还是蓝色,如果我们需要修改标记点的颜色的需要通过参数color:
from pyecharts.charts import Line
import pyecharts.options as opts# 家庭每月用电量趋势
x_data = ["1月", "2月", "3月", "4月", "5月", "6月", "7月", "8月", "9月", "10月", "11月", "12月"
]
y_data = [120, 140, 118, 98, 91, 87, 152, 214, 198, 154, 121, 108]chart = Line()chart.add_xaxis(x_data)
chart.add_yaxis("用电量",y_data,color='red',areastyle_opts=opts.AreaStyleOpts(color='red', opacity=0.3),linestyle_opts=opts.LineStyleOpts(width=2, color='red'))chart.render_notebook()
效果如下:

平滑曲线效果
通过is_smooth=True进行设置;
from pyecharts.charts import Line
import pyecharts.options as opts# 家庭每月用电量趋势
x_data = ["1月", "2月", "3月", "4月", "5月", "6月", "7月", "8月", "9月", "10月", "11月", "12月"
]
y_data = [120, 140, 118, 98, 91, 87, 152, 214, 198, 154, 121, 108]chart = Line()chart.add_xaxis(x_data)
chart.add_yaxis("用电量",y_data,color='red',is_smooth=True,areastyle_opts=opts.AreaStyleOpts(color='red', opacity=0.3),linestyle_opts=opts.LineStyleOpts(width=2, color='red'))chart.render_notebook()
效果如下:

线形
可以设置虚线实线等样式,同样还是通过linestyle_opts进行配置,支持的参数值有 solid, dashed, dotted
from pyecharts.charts import Line
import pyecharts.options as opts# 家庭每月用电量趋势
x_data = ["1月", "2月", "3月", "4月", "5月", "6月", "7月", "8月", "9月", "10月", "11月", "12月"
]
y_data_1 = [120, 140, 118, 98, 91, 87, 152, 214, 198, 154, 121, 108]
y_data_2 = [230, 139, 128, 182, 151, 187, 252, 304, 208, 124, 101, 88]chart = Line()chart.add_xaxis(x_data)
chart.add_yaxis("张三家",y_data_1,is_smooth=True,linestyle_opts=opts.LineStyleOpts(type_='dotted'))
chart.add_yaxis("李四家",y_data_2,is_smooth=True,linestyle_opts=opts.LineStyleOpts(type_='dashed'))chart.render_notebook()
效果如下:

标记图形
折线图除了线条的样式可以配置,标记点样式也可以进行调整。
颜色/大小/形状
- symbol:标记的图形,可选参数值: ‘circle’, ‘rect’, ‘roundRect’, ‘triangle’, ‘diamond’, ‘pin’, ‘arrow’, ‘none’
- symbol_size:标记图形的大小;
- color:系列颜色,线条颜色未设置的话会同时设置图形和线条的颜色,与柱形图一样,也可以通过
itemstyle_opts进行颜色配置;
from pyecharts.charts import Line
import pyecharts.options as opts# 家庭每月用电量趋势
x_data = ["1月", "2月", "3月", "4月", "5月", "6月", "7月", "8月", "9月", "10月", "11月", "12月"
]
y_data_1 = [120, 140, 118, 98, 91, 87, 152, 214, 198, 154, 121, 108]
y_data_2 = [230, 139, 128, 182, 151, 187, 252, 304, 208, 124, 101, 88]chart = Line()chart.add_xaxis(x_data)
chart.add_yaxis("张三家",y_data_1,is_smooth=True,# 颜色/大小/形状symbol='roundRect',symbol_size=20,color='green',linestyle_opts=opts.LineStyleOpts(type_='dotted'))
chart.add_yaxis("李四家",y_data_2,is_smooth=True,symbol='triangle',symbol_size=20,color='orange',linestyle_opts=opts.LineStyleOpts(type_='dashed'))chart.render_notebook()
效果如下:

相关文章:
Pyecharts系列课程04——折线图/面积图(Line)
本章我们学习在Pyecharts中折线图(Line)的使用。折线图通用应用于数据的趋势分析。 折线图 我们现在有两组数据,x_data是2024年的月份,y_data为对应张三甲每个月的用电量。 # 家庭每月用电量趋势 x_data ["1月", &q…...
变压器-000000
最近一个项目是木田12V的充电器,要设计变压器,输出是12V,电压大于1.5A12.6*1.518.9W. 也就是可以将变压器当成初级输入的一个负载。输入端18.9W. 那么功率UI 。因为变压器的输入是线性上升的,所以电压为二份之一,也就是1/2*功率…...
凝思60重置密码
凝思系统重置密码 - 赛博狗尾草 - 博客园 问题描述 凝思系统进入单用户模式,在此模式下,用户可以访问修复错误配置的文件。也可以在此模式下安装显卡驱动,解决和已加载驱动的冲突问题。 适用范围 linx-6.0.60 linx-6.0.80 linx-6.0.100…...
linux——网络计算机{序列化及反序列化(JSON)(ifdef的用法)}
linux——网络(服务器的永久不挂——守护进程)-CSDN博客 目录 一、序列化与反序列化 1. 推荐 JSON 库 2. 使用 nlohmann/json 示例 安装方法 基础用法 输出结果 3. 常见操作 4. 其他库对比 5. 选择建议 二、ifdef宏的用法 基本语法 核心用途…...
【教程】docker升级镜像
转载请注明出处:小锋学长生活大爆炸[xfxuezhagn.cn] 如果本文帮助到了你,欢迎[点赞、收藏、关注]哦~ 目录 自动升级 手动升级 无论哪种方式,最重要的是一定要通过-v参数做数据的持久化! 自动升级 使用watchtower,可…...
迅为RK3568开发板篇OpenHarmony实操HDF驱动控制LED-编写应用APP
在应用代码中我们实现如下功能: 当应用程序启动后会获取命令行参数。如果命令行没有参数,LED 灯将循环闪烁;如果命令行带有参数,则根据传输的参数控制 LED 灯的开启或关闭。通过 HdfIoServiceBind 绑定 LED灯的 HDF 服务ÿ…...
python代码
python\main_script.py from multiprocessing import Process import subprocessdef call_script(args):# 创建一个新的进程来运行script_to_call.pyprocess Process(targetrun_script, args(args[0], args[1]))process.start()process2 Process(targetrun_script, args(arg…...
React 打印插件 -- react-to-print
一、安装依赖 npm install react-to-print 二、使用 import { useReactToPrint } from "react-to-print"; import React, { useRef, forwardRef } from react;const Content () > {const contentRef useRef(null);const reactToPrintFn useReactToPrint({ c…...
探索C语言简易计算器程序的实现与优化
在C语言编程学习中,实现一个简易计算器是一个常见且有趣的练习项目。它不仅能帮助我们巩固基本的语法知识,如函数、循环、分支结构,还能让我们深入理解程序设计的逻辑。接下来,我们将分析三段实现简易计算器功能的C语言代码&#…...
深入了解 MySQL:从基础到高级特性
引言 在当今数字化时代,数据的存储和管理至关重要。MySQL 作为一款广泛使用的开源关系型数据库管理系统(RDBMS),凭借其高性能、可靠性和易用性,成为众多开发者和企业的首选。本文将详细介绍 MySQL 的基础概念、安装启…...
OSPF基础(1):工作过程、状态机、更新
OSPF基础 1、技术背景(与RIP密不可分,因为RIP中存在的问题) RIP中存在最大跳数为15的限制,不能适应大规模组网周期性发送全部路由信息,占用大量的带宽资源以路由收敛速度慢以跳数作为度量值存在路由环路可能性每隔30秒…...
工业相机如何获得更好的图像色彩
如何获得更好的图像色彩 大部分的工业自动化检测中对物体的色彩信息并不敏感,因此会使用黑白的相机,但是在显微镜成像、颜色分类识别等领域,相机的色彩还原就显得格外重要,在调节相机色彩方面的参数时,有以下几个方面需…...
使用requestAnimationFrame减少浏览器重绘
文章目录 介绍使用使用rAF前使用rAF后 介绍 在屏幕中,浏览器通常都以60FPS(1/60 s)每帧更新屏幕,但是当前端绑定了一些高频事件,如鼠标移动,屏幕滚动、触摸滑动等时,在一帧的周期内,…...
Mac 终端命令大全
—目录操作— ꔷ mkdir 创建一个目录 mkdir dirname ꔷ rmdir 删除一个目录 rmdir dirname ꔷ mvdir 移动或重命名一个目录 mvdir dir1 dir2 ꔷ cd 改变当前目录 cd dirname ꔷ pwd 显示当前目录的路径名 pwd ꔷ ls 显示当前目录的内容 ls -la ꔷ dircmp 比较两个目录的内容 di…...
如何使用deepseek开发一个翻译API
什么是deepseek Deepseek 是一个基于人工智能技术的自然语言处理平台,提供了多种语言处理能力,包括文本翻译、语义分析、情感分析等。它通过深度学习模型和大规模语料库训练,能够实现高质量的文本翻译和多语言理解。Deepseek 的核心优势在于…...
vue如何解决跨域
文章目录 vue如何解决跨域1. 什么是跨域2. 如何解决2.1 CROS(Cross-Origin Resource Sharing,跨域资源共享)2.2 Proxy2.2.1 使用webpack proxy2.2.2 服务端代理转发2.2.3 通过nginx实现代理 vue如何解决跨域 1. 什么是跨域 跨域本质是浏览器…...
红包雨项目前端部分
创建项目 pnpm i -g vue/cli vue create red_pakage pnpm i sass sass-locader -D pnpm i --save normalize.css pnpm i --save-dev postcss-px-to-viewportpnpm i vantlatest-v2 -S pnpm i babel-plugin-import -Dhttps://vant.pro/vant/v2/#/zh-CN/<van-button click&…...
新版AndroidStudio 修改 jdk版本
一、问题 之前,在安卓项目中配置JDK和Gradle的过程非常直观,只需要进入Android Studio的File菜单中的Project Structure即可进行设置,十分方便。 如下图可以在这修改JDK: 但是升级AndroidStudio之后,比如我升级到了Android Stu…...
【golang学习之旅】使用VScode安装配置Go开发环境
1. 下载并安装Go 1.1 下载地址1.2 选择版本并下载1.3 安装目录1.4 验证是否安装成功 2. 配置环境变量 2.1 配置步骤2.2 GO部分环境变量说明 3. 下载或更新 Vscode 3.1 下载地址3.2 安装步骤 4. 为Go开发配置VScode 1. 下载并安装Go 1.1 下载地址 https://studygolang.com/dl…...
langchain教程-2.prompt
前言 该系列教程的代码: https://github.com/shar-pen/Langchain-MiniTutorial 我主要参考 langchain 官方教程, 有选择性的记录了一下学习内容 这是教程清单 1.初试langchain2.prompt3.OutputParser/输出解析4.model/vllm模型部署和langchain调用5.DocumentLoader/多种文档…...
椭圆曲线密码学(ECC)
一、ECC算法概述 椭圆曲线密码学(Elliptic Curve Cryptography)是基于椭圆曲线数学理论的公钥密码系统,由Neal Koblitz和Victor Miller在1985年独立提出。相比RSA,ECC在相同安全强度下密钥更短(256位ECC ≈ 3072位RSA…...
理解 MCP 工作流:使用 Ollama 和 LangChain 构建本地 MCP 客户端
🌟 什么是 MCP? 模型控制协议 (MCP) 是一种创新的协议,旨在无缝连接 AI 模型与应用程序。 MCP 是一个开源协议,它标准化了我们的 LLM 应用程序连接所需工具和数据源并与之协作的方式。 可以把它想象成你的 AI 模型 和想要使用它…...
相机从app启动流程
一、流程框架图 二、具体流程分析 1、得到cameralist和对应的静态信息 目录如下: 重点代码分析: 启动相机前,先要通过getCameraIdList获取camera的个数以及id,然后可以通过getCameraCharacteristics获取对应id camera的capabilities(静态信息)进行一些openCamera前的…...
Axios请求超时重发机制
Axios 超时重新请求实现方案 在 Axios 中实现超时重新请求可以通过以下几种方式: 1. 使用拦截器实现自动重试 import axios from axios;// 创建axios实例 const instance axios.create();// 设置超时时间 instance.defaults.timeout 5000;// 最大重试次数 cons…...
让回归模型不再被异常值“带跑偏“,MSE和Cauchy损失函数在噪声数据环境下的实战对比
在机器学习的回归分析中,损失函数的选择对模型性能具有决定性影响。均方误差(MSE)作为经典的损失函数,在处理干净数据时表现优异,但在面对包含异常值的噪声数据时,其对大误差的二次惩罚机制往往导致模型参数…...
Spring是如何解决Bean的循环依赖:三级缓存机制
1、什么是 Bean 的循环依赖 在 Spring框架中,Bean 的循环依赖是指多个 Bean 之间互相持有对方引用,形成闭环依赖关系的现象。 多个 Bean 的依赖关系构成环形链路,例如: 双向依赖:Bean A 依赖 Bean B,同时 Bean B 也依赖 Bean A(A↔B)。链条循环: Bean A → Bean…...
技术栈RabbitMq的介绍和使用
目录 1. 什么是消息队列?2. 消息队列的优点3. RabbitMQ 消息队列概述4. RabbitMQ 安装5. Exchange 四种类型5.1 direct 精准匹配5.2 fanout 广播5.3 topic 正则匹配 6. RabbitMQ 队列模式6.1 简单队列模式6.2 工作队列模式6.3 发布/订阅模式6.4 路由模式6.5 主题模式…...
逻辑回归暴力训练预测金融欺诈
简述 「使用逻辑回归暴力预测金融欺诈,并不断增加特征维度持续测试」的做法,体现了一种逐步建模与迭代验证的实验思路,在金融欺诈检测中非常有价值,本文作为一篇回顾性记录了早年间公司给某行做反欺诈预测用到的技术和思路。百度…...
【LeetCode】3309. 连接二进制表示可形成的最大数值(递归|回溯|位运算)
LeetCode 3309. 连接二进制表示可形成的最大数值(中等) 题目描述解题思路Java代码 题目描述 题目链接:LeetCode 3309. 连接二进制表示可形成的最大数值(中等) 给你一个长度为 3 的整数数组 nums。 现以某种顺序 连接…...
android RelativeLayout布局
<?xml version"1.0" encoding"utf-8"?> <RelativeLayout xmlns:android"http://schemas.android.com/apk/res/android"android:layout_width"match_parent"android:layout_height"match_parent"android:gravity&…...
