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

【Python高级编程】用 Matplotlib 绘制迷人的图表

用 Matplotlib 绘制迷人的图表

引言

Matplotlib 是 Python 中广泛使用的绘图库,用于创建各种图表和可视化。本文将逐步指导您使用 Matplotlib 绘制基本图表,包括折线图、条形图和散点图。

安装 Matplotlib

使用 pip 安装 Matplotlib:

pip install matplotlib

导入 Matplotlib

在 Python 脚本中导入 Matplotlib:

import matplotlib.pyplot as plt

绘制折线图

要绘制折线图,请使用 plt.plot() 函数。传入 x 和 y 值作为列表或数组:

# x 轴数据
x = [0, 1, 2, 3, 4]
# y 轴数据
y = [2, 4, 6, 8, 10]# 绘制折线图
plt.plot(x, y)
# 显示图表
plt.show()

绘制条形图

要绘制条形图,请使用 plt.bar() 函数。传入 x 轴标签和相应的高度:

# x 轴标签
x = ['A', 'B', 'C', 'D', 'E']
# 高度
y = [10, 20, 30, 40, 50]# 绘制条形图
plt.bar(x, y)
# 显示图表
plt.show()

绘制散点图

要绘制散点图,请使用 plt.scatter() 函数。传入 x 和 y 值作为列表或数组:

# x 轴数据
x = [1, 2, 3, 4, 5]
# y 轴数据
y = [2, 4, 5, 4, 5]# 绘制散点图
plt.scatter(x, y)
# 显示图表
plt.show()

定制图表

Matplotlib 提供了广泛的选项来定制图表,定制 Matplotlib 图表可以显著增强其视觉吸引力和信息传递能力。以下是定制图表中常用的几个方面及其使用方法:

标题和标签

  • **设置标题:**使用 plt.title("标题") 设置图表标题。
  • **设置轴标签:**使用 plt.xlabel("x 轴标签")plt.ylabel("y 轴标签") 设置 x 和 y 轴标签。

网格线

  • **启用网格线:**使用 plt.grid() 启用网格线。
  • **禁用网格线:**使用 plt.grid(False) 禁用网格线。

图例

  • **添加图例:**使用 plt.legend() 添加图例,其中包含每个线条或标记的标签。
  • **指定图例位置:**使用 loc 参数指定图例的位置,例如 'best''upper left''lower right'

颜色和样式

  • **设置线条颜色:**使用 color 参数设置线条颜色,例如 'red''blue''#00FF00'
  • **设置线条样式:**使用 linestyle 参数设置线条样式,例如 '-'(实线)、'--'(虚线)或 ':'(点线)。
  • **设置标记样式:**使用 marker 参数设置标记样式,例如 'o'(圆形)、'x'(叉形)或 '^'(三角形)。

其他定制选项

  • **设置坐标范围:**使用 plt.xlim()plt.ylim() 设置 x 和 y 轴的范围。
  • **添加文本注释:**使用 plt.text() 在图表中添加文本注释。
  • **使用子图:**使用 plt.subplot() 创建子图,并在同一图表中显示多个图。

示例

以下代码演示了如何使用这些定制选项:

import matplotlib.pyplot as plt# 设置数据
x = [0, 1, 2, 3, 4]
y = [2, 4, 6, 8, 10]# 创建图表
plt.plot(x, y)# 设置标题和标签
plt.title("折线图")
plt.xlabel("x 轴")
plt.ylabel("y 轴")# 启用网格线
plt.grid()# 添加图例
plt.legend(["折线"])# 设置线条颜色和样式
plt.plot(x, y, color='blue', linestyle='--')# 设置标记样式
plt.scatter(x, y, marker='o')# 设置坐标范围
plt.xlim(0, 4)
plt.ylim(0, 10)# 添加文本注释
plt.text(2, 8, "数据点")# 显示图表
plt.show()

通过使用这些定制选项,您可以创建信息丰富且引人入胜的图表,有效地传达您的数据。

保存图表

要保存图表,请使用 plt.savefig() 函数:

plt.savefig('my_chart.png', dpi=300)

相关文章:

【Python高级编程】用 Matplotlib 绘制迷人的图表

用 Matplotlib 绘制迷人的图表 引言 Matplotlib 是 Python 中广泛使用的绘图库,用于创建各种图表和可视化。本文将逐步指导您使用 Matplotlib 绘制基本图表,包括折线图、条形图和散点图。 安装 Matplotlib 使用 pip 安装 Matplotlib: pi…...

【UML用户指南】-19-对基本行为建模-用例图

目录 1、组成结构 2、表示法 3、一般用法 3.1、对主题的语境建模 3.2、对主题的需求建模 4、常用建模技术 4.1、对系统的语境建模 4.1.1、设计过程 4.2、对系统的需求建模 4.2.1、设计过程: 5、正向工程 UML 中的用例图是对系统的动态方面建模的 5 种图之…...

mysql密码过期的修改(Your password has expired. ..)

参考文章:mysql密码过期的修改方法(your password has expired)_我是知青-RuoYi 若依 (csdn.net) 问题:Your password has expired. To log inyou must change it using a clientthat supports expired passwords. 解决方式&…...

vivado SLR

描述 超级逻辑区(SLR)是包含在堆叠硅中的单个FPGA芯片 互连(SSI)设备。堆叠式硅互连(SSI)技术使用无源硅 具有微凸块和硅通孔(TSV)的内插器,用于组合多个FPGA管芯 切片&a…...

【CSS】深入了解圆角属性border-radius

border-radius 是 CSS 中的一个非常有用的属性,它允许你创建具有圆角边框的元素。这个属性可以应用于一个元素的四个角,或者分别应用于每个角。下面我们将深入了解 border-radius 的使用方法和一些高级技巧。 基本用法 你可以通过为 border-radius 指定…...

LabVIEW与C#的区别及重新开发自动测试程序的可行性分析

LabVIEW和C#是两种广泛使用的编程语言,各自有不同的应用领域和特点。本文将详细比较LabVIEW与C#在自动测试程序开发中的区别,并分析将已完成的LabVIEW自动测试程序重新用C#开发的合理性。本文帮助评估这种转换的必要性和潜在影响。 LabVIEW与C#的区别 开…...

人工智能—美国加利福尼亚州房价预测实战

引言 在当今快速发展的房地产市场中,房价预测已成为一个至关重要的领域。它不仅关系到投资者的决策,也直接影响到普通购房者的生活质量。特别是在美国加利福尼亚州,这个以其高房价和房地产市场的波动性而闻名的地方,准确的房价预…...

python pandas处理股票量化数据:笔记2

有一个同学用我的推荐链接注册了tushare社区帐号https://tushare.pro/register?reg671815,现在有了170分积分。目前使用数据的频率受限制。不过可以在调试期间通过python控制台获取数据,将数据保存在本地以后使用不用高频率访问tushare数据接口&#xf…...

enum库

Python enum 模块教程 enum 是 Python 3.4 引入的一个模块,用于定义枚举类型。枚举类型是一种特殊的数据类型,由一组命名的值组成,这些值称为枚举成员。使用 enum 可以提高代码的可读性和可维护性,特别是在处理一组相关的常量值时…...

【CT】LeetCode手撕—141. 环形链表

目录 题目1- 思路2- 实现⭐141. 环形链表——题解思路 3- ACM实现 题目 原题连接:141. 环形链表 1- 思路 模式识别 模式1:判断链表的环 ——> 快慢指针 思路 快指针 ——> 走两步慢指针 ——> 走一步判断环:若快慢相遇则有环&a…...

python,自定义token生成

1、使用的包PyJWT来实现token生成 安装:pip install PyJWT2.8.0 2、使用例子: import jwt import time pip install pyJWT2.8.0 SECRET_KEY %^ES*E&Ryurehuie9*7^%$#$EDFGHUYTRE#$%^&%$##$RTYGHIK DEFAULT_EXP 7 * 24 * 60def create_token(…...

小米SU7遇冷,下一代全新车型被官方意外曝光

不知道大伙儿有没有发现,最近小米 SU7 热度好像突然之间就淡了不少? 作为小米首款车型,SU7 自上市以来一直承载着新能源轿车领域流量标杆这样一个存在。 发售 24 小时订单量破 8 万,2 个月后累计交付破 2 万台。 看得出来限制它…...

JavaScript 函数与事件

1. JavaScript自定义函数 语法: function 函数名(参数列表){ 方法体; } 在函数被调用时,一个 arguments 对象就会被创建,它只能使用在函数体中,以数组的形式来管理函数的实际…...

Qt 焦点系统关键点总结

1.1 焦点窗口 指的是当前时刻拥有键盘输入的窗口。 Qt提供了如下接口,用于设置窗口是否是”可获取焦点“窗口: void QWidget::setFocusPolicy(Qt::FocusPolicy policy); Qt::FocusPolicy Qt::TabFocus 与焦点链相关,详解见下一…...

SpringBoot+Maven项目的配置构建

文章目录 1、application.properties2、pom.xml 1、application.properties 也可使用yml yaml #静态资源 spring.mvc.static-path-pattern/images/** #上传文件大小设置 spring.http.multipart.max-file-size10MB spring.http.multipart.max-request-size10MBspring.mvc.path…...

c#调用c++dll方法

添加dll文件到debug目录,c#生成的exe的相同目录 就可以直接使用了,放在构造函数里面测试...

ACM算法学习路线、清单

入门 模拟、暴力、贪心、高精度、排序 图论 搜索 BFS、DFS、IDDFS、IDA*、A*、双向BFS、记忆化 最短路 SPFA、bellman-fort(队列优化)、Dijkstra(堆优化)、Johnson、Floyd、差分约束、第k短路 树 树的重心和直径、dfs序、树链刨分与动态树、LCA、Prufer编码及Cayley定理…...

sqoop的安装配置

1. 上传并解压安装包 tar -zxvf sqoop-1.4.7.bin__hadoop-2.6.0.tar.gz -C ../server/ 重命名:mv sqoop-1.4.7.bin__hadoop-2.6.0 sqoop 2. 配置环境变量 sudo vim /etc/profile # 配置sqoop的环境变量 export SQOOP_HOME/export/server/sqoop export PATH$PATH…...

代码随想录算法训练营第六十四天 | 图论理论基础、深搜理论基础、广搜理论基础、98. 所有可达路径

图论理论基础 我写在了个人语雀笔记中 https://www.yuque.com/yuqueyonghu8mml9e/bmbl71/ex473q4y0ebs0l3r?singleDoc# 深搜理论基础 https://www.yuque.com/yuqueyonghu8mml9e/bmbl71/zamfikz08c2haptn?singleDoc# 98. 所有可达路径 题目链接:98. 所有可达…...

【教师资格证考试综合素质——法律专项】教师法笔记以及练习题

《中华人民共和国教师法》 一.首次颁布:第一部《中华人民共和国教师法》于1993年10月31日由第八届全国人民代表大会常务委员会第四次会议通过,1994年1月1日起执行。 二.历次修改:2009年8月27日第十一届全国人民代表…...

图卷积网络(Graph Convolutional Network, GCN)

图卷积网络(Graph Convolutional Network, GCN)是一种用于处理图结构数据的深度学习模型。GCN编码器的核心思想是通过邻接节点的信息聚合来更新节点表示。 图的表示 一个图 G通常表示为 G(V,E),其中: V 是节点集合,…...

【diffusers 极速入门(一)】pipeline 实际调用的是什么? __call__ 方法!

在使用 diffusers 库进行图像生成时,你可能会发现管道(pipeline)对象可以像函数一样被调用。这背后的魔法是什么呢?答案是:__call__ 方法!本文将通过简单的案例代码,带你快速了解 diffusers 管道…...

【DPDK学习路径】二、DPDK简介

DPDK(Data Plane Development Kit)是一个框架,用于快速报文处理。 在linux内核提供的报文处理模型中,接收报文的处理路径为:首先由网卡硬件接收,产生硬中断,触发网卡驱动程序注册的中断函数处理,之后产生软…...

python基础 002 - 2 常用数据类型

python的常用数据类型 int , 整型 1,2,3float ,小数,浮点类型1.2bool , boolean 布尔,真假。判断命题。True Flasestr ,字符串 list , 列表 a []tuple, 元组 a ()dict , dictionary, 字典 a {}set , 集合 a {} 1 查看数据类型 typ…...

爆赞!GitHub首本Python开发实战背记手册,标星果然百万名不虚传

Python (发音:[ paiθ(ə) n; (US) paiθɔn ] n. 蟒蛇,巨蛇 ),是一种面向对象的解释性的计算机程序设计语言,也是一种功能强大而完善的通用型语言,已经具有十多年的发展历史,成熟且稳定。Python 具有脚本语言中最丰富…...

Spring源码-xxxAware实现类和BeanPostProcessor接口调用过程

xxxAware实现类作用 以ApplicationContextAware接口为例 ApplicationContextAware的作用是可以方便获取Spring容器ApplicationContext,从而可以获取容器内的Bean package org.springframework.context;import org.springframework.beans.BeansException; import or…...

Uni-app x

uni-app x,是下一代 uni-app,是一个跨平台应用开发引擎。 uni-app x 是一个庞大的工程,它包括uts语言、uvue渲染引擎、uni的组件和API、以及扩展机制。 uts是一门类ts的、跨平台的、新语言。uts在iOS端编译为swift、在Android端编译为kotli…...

Python 基础:文件

目录 一、从文件中读取数据1.1 读取整个文件1.2 逐行读取 二、写入文件2.1 写入空文件2.2 写入多行2.3 附加到文件 遇到看不明白的地方,欢迎在评论中留言呐,一起讨论,一起进步! 本文参考:《Python编程:从入…...

WebForms 母版页

WebForms 母版页 介绍 WebForms 母版页是 ASP.NET WebForms 应用程序中的一项功能,它允许开发人员创建一个包含页面布局和控件的模板,其他页面可以继承这个模板。使用母版页可以确保整个网站的一致性和减少重复代码。 如何创建母版页 在 Visual Stud…...

Java应用打包成Docker镜像

# 使用官方的OpenJDK17镜像作为基础镜像 FROM openjdk:17 # 设置工作目录 WORKDIR /app # 复制本地的Java应用程序文件到镜像中的指定目录 COPY target/bear-module-system-0.0.1-SNAPSHOT.jar /app/bear-module-system-0.0.1-SNAPSHOT.jar # 暴露API端口 EXPOSE 8888 …...

加盟型网站制作/上海企业推广

自动化运维工具ansible的安装部署及其命令行模块 文章目录自动化运维工具ansible的安装部署及其命令行模块一、ansible简介二、为什么选择ansible1、puppet、saltstack和ansible的对比2、ansible 的特点三、ansible的安装部署1、yum安装epel源和ansible并查看其结构2、修改ansi…...

个人如何建立网站/百度如何注册公司网站

默认是负载均衡 设置为广播模式:...

山西建设工程备案网站/网络优化培训要多少钱

目录 前言 目标 自我管理 智,能谋略通权变,任智则贼。 信,能明赏罚,号令一也,固守信则愚。 仁,能附众得人心,遍施仁则懦。 勇,能果断,恃勇则暴。 严,…...

网站开发项目建设规范/百度指数查询移民

1. 简单java程序 /** 文档注释 @author HarkerYX @version v1.0*/package com.yx.demo; public class HelloJava{/*多行注释:如下的main方法是程序的入口!main的格式是固定的!*//**如下的方式是main(),作用:程序的入口。*/public static void main(String[] args){//单行注…...

微信商店小程序制作教程/长沙seo服务

服务端设置1 服务端就是你想要从它那获取共享文件。 准备: 服务端是Ubuntu18.04桌面版,且配置了远程桌面xfce4。 先要安装Sambasudo apt-get install samba openssh-server找到首选应用程序 将文件管理改为Ubuntu桌面系统的文件管理器-nautilus...

公司网站备案/培训心得体会万能模板

之前遇到一个老师,他从事Java行业20年了,在Python兴起的时候,他周围的其他同行们都在纷纷学习Python方面的知识,连他的学生也问他“老师,你为什么不学Python呢?”。当这位听到学生这个问题的时候&#xff0…...