python 进阶教程--matplotlib

news/2024/7/8 16:29:22 标签: python, matplotlib, 开发语言

matplotlib

  • 3.1 安装配置
  • 3.2 Matplotlib 快速入门
  • 3.3 图形绘制
      • 线图
      • 散点图
      • 条形图
      • 饼图
  • 3.4 风格样式
      • 使用内置样式
      • 创建自定义样式
      • 临时使用样式

3.1 安装配置

Matplotlib 是一个用于创建高质量图表的 Python 绘图库。在开始使用 Matplotlib 之前,需要先安装它。以下是安装 Matplotlib 的步骤:
步骤 1:确保已经安装了 Python 和 pip。pip 是 Python 的包管理工具,用于安装和管理 Python 包。
步骤 2:打开命令提示符或终端,输入以下命令来安装 Matplotlib:

pip install matplotlib

这将自动下载并安装 Matplotlib 及其依赖的包。
步骤 3:安装完成后,可以通过在 Python 解释器中导入 Matplotlib 来验证安装是否成功:

python">import matplotlib

如果没有出现错误消息,那么 Matplotlib 已经成功安装。
步骤 4:为了更好地使用 Matplotlib,建议安装一个图形用户界面(GUI)工具,如 Jupyter Notebook 或 PyCharm。这些工具可以帮助更方便地创建和展示图表。
步骤 5:在 Jupyter Notebook 中使用 Matplotlib 时,可以通过以下命令启用 inline 模式,以便在笔记本中直接显示图表:

python">%matplotlib inline

这就是安装配置 Matplotlib 的基本步骤。安装完成后,可以开始使用 Matplotlib 创建各种图表。


3.2 Matplotlib 快速入门

安装 Matplotlib 后,我们可以通过一些基本的示例来快速了解如何使用这个库。以下是一些简单的步骤来开始使用 Matplotlib 绘制图表。
步骤 1:导入 Matplotlib 的 pyplot 模块。pyplot 是 Matplotlib 的一个模块,提供了一个类似于 MATLAB 的绘图框架。

python">import matplotlib.pyplot as plt

步骤 2:准备数据。我们通常需要提供 x 和 y 轴的数据。

python">x = [0, 1, 2, 3, 4]
y = [0, 1, 4, 9, 16]

步骤 3:使用 plt.plot() 函数绘制图表。

python">plt.plot(x, y)

步骤 4:添加标题和标签,以便更好地描述图表。

python">plt.title('Sample Plot')
plt.xlabel('X-axis label')
plt.ylabel('Y-axis label')

步骤 5:调用 plt.show() 来显示图表。

python">plt.show()

将上述步骤组合在一起,我们得到一个简单的 Python 脚本,用于绘制一个基本的折线图。

python">import matplotlib.pyplot as plt
# 数据
x = [0, 1, 2, 3, 4]
y = [0, 1, 4, 9, 16]
# 绘图
plt.plot(x, y)
# 添加标题和标签
plt.title('Sample Plot')
plt.xlabel('X-axis label')
plt.ylabel('Y-axis label')
# 显示图表
plt.show()

运行这段代码,将会弹出一个窗口,显示我们绘制的折线图。
这是 Matplotlib 的快速入门示例。通过这个示例,我们可以看到如何导入 pyplot 模块,准备数据,绘制图表,添加标题和标签,以及显示图表。接下来,我们可以学习如何绘制不同类型的图表和自定义图表的样式。


3.3 图形绘制

Matplotlib 支持多种图形的绘制,包括线图、散点图、条形图、饼图等。以下是一些基本图形绘制的示例。

线图

线图是最基本的图表类型之一,用于显示数据随时间或其他连续变量的变化趋势。

python">import matplotlib.pyplot as plt
# 数据
x = [0, 1, 2, 3, 4]
y = [0, 1, 4, 9, 16]
# 绘制线图
plt.plot(x, y)
# 添加标题和标签
plt.title('Line Chart')
plt.xlabel('X-axis')
plt.ylabel('Y-axis')
# 显示图表
plt.show()

散点图

散点图用于显示两个变量之间的关系,每个点代表一个数据点。

python">import matplotlib.pyplot as plt
# 数据
x = [5, 7, 8, 7, 2, 17, 2, 9, 4, 11, 12, 9, 6]
y = [99, 86, 87, 88, 100, 86, 103, 87, 94, 78, 77, 85, 86]
# 绘制散点图
plt.scatter(x, y)
# 添加标题和标签
plt.title('Scatter Plot')
plt.xlabel('X-axis')
plt.ylabel('Y-axis')
# 显示图表
plt.show()

条形图

条形图用于比较不同类别的数据。

python">import matplotlib.pyplot as plt
# 数据
categories = ['A', 'B', 'C', 'D']
values = [10, 8, 6, 4]
# 绘制条形图
plt.bar(categories, values)
# 添加标题和标签
plt.title('Bar Chart')
plt.xlabel('Categories')
plt.ylabel('Values')
# 显示图表
plt.show()

饼图

饼图用于显示各部分占整体的比例。

python">import matplotlib.pyplot as plt
# 数据
labels = 'Apples', 'Oranges', 'Pears', 'Bananas'
sizes = [15, 30, 45, 10]
colors = ['gold', 'yellowgreen', 'lightcoral', 'lightskyblue']
# 绘制饼图
plt.pie(sizes, labels=labels, colors=colors, autopct='%1.1f%%', startangle=140)
# 显示图表
plt.axis('equal')  # 确保饼图是圆形的
plt.show()

这些是使用 Matplotlib 绘制基本图形的示例。通过调整绘图函数的参数,可以自定义图表的外观,包括颜色、线型、标记等。此外,Matplotlib 还支持更复杂的图表类型和自定义选项,可以通过官方文档进一步探索。


3.4 风格样式

Matplotlib 提供了多种内置的风格样式,可以让你的图表变得更加美观和个性化。通过使用样式,可以快速改变图表的整体外观,包括颜色、线型、背景等。

使用内置样式

Matplotlib 内置了许多样式,你可以通过 plt.style.use() 函数来选择使用。首先,让我们查看所有可用的样式:

python">import matplotlib.pyplot as plt
print(plt.style.available)

这将打印出所有可用的样式列表。选择一个样式并应用于你的图表:

python">plt.style.use('ggplot')  # 例如,使用 'ggplot' 样式

现在,使用这个样式绘制一个图表:

python">plt.plot([1, 2, 3, 4])
plt.show()

创建自定义样式

除了使用内置样式,你还可以创建自定义样式。可以通过创建一个名为 mpl_style.py 的 Python 文件来定义自己的样式,然后在这个文件中设置你想要的参数。例如:

python"># mpl_style.py
plt.style.use([
    'dark_background',  # 使用暗色背景
    {
        'axes.edgecolor': 'white',  # 轴边缘颜色为白色
        'axes.facecolor': '#333333',  # 轴背景颜色为深灰色
        'axes.labelcolor': 'white',  # 轴标签颜色为白色
        'xtick.color': 'white',  # x轴刻度颜色为白色
        'ytick.color': 'white',  # y轴刻度颜色为白色
        'grid.color': 'gray',  # 网格颜色为灰色
        'text.color': 'white',  # 文本颜色为白色
        'figure.facecolor': '#222222',  # 图表背景颜色为深灰色
        'savefig.facecolor': '#222222',  # 保存图表的背景颜色为深灰色
    }
])

然后在你的脚本中导入这个样式:

python">import matplotlib.pyplot as plt
import mpl_style
plt.style.use(mpl_style)  # 使用自定义样式
plt.plot([1, 2, 3, 4])
plt.show()

临时使用样式

如果你只想在特定的代码块中使用一个样式,可以使用 with 语句来临时应用样式:

python">import matplotlib.pyplot as plt
with plt.style.context('seaborn-darkgrid'):
    plt.plot([1, 2, 3, 4])
    plt.show()

在这个代码块中绘制的图表将使用 ‘seaborn-darkgrid’ 样式,而代码块之外的图表则不会受到影响。
通过这些方法,你可以轻松地改变 Matplotlib 图表的外观,使其更加符合你的需求或品牌风格。


http://www.niftyadmin.cn/n/5537482.html

相关文章

配置tmux,使用tmux的方法,tmux的相关指令,以及tmux相关的快捷键

配置tmux的方法,以及使用tmux的方法,相关指令,以及和tmux相关的快捷键吗? 首先,先列出来tmux 的最基本的使用方法,再详细介绍:tmux最基本使用方法:tmux相关快捷键 之后是tmux 的详细…

winform2

12.TabControl 导航控制条 using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; namespace zhiyou_…

【控制Android.bp的编译】

1.首先Android.bp的语法是不支持if 条件语句的 2.查到可以用enabled来控制Android.bp中的模块是否参与编译,但是并不能实现动态的控制,比如你需要根据获取到的安卓版本来控制一个Android.bp是否编译,是无法做到的。enabled只能是固定的true或…

Impala JDBC/ODBC driver返回不完整数据的解决办法

背景 用户在升级到CDP或Impala-3.4后,可能遇到JDBC/ODBC driver返回不完整数据的情况。比如实际查询结果有100行,但返回90行就结束了,每次的结果不一定相同,只有在时长超过10秒的查询会出现。这可能是遇到了JDBC/ODBC driver的bu…

Java 并发集合:CopyOnWrite 写时复制集合介绍

大家好,我是栗筝i,这篇文章是我的 “栗筝i 的 Java 技术栈” 专栏的第 016 篇文章,在 “栗筝i 的 Java 技术栈” 这个专栏中我会持续为大家更新 Java 技术相关全套技术栈内容。专栏的主要目标是已经有一定 Java 开发经验,并希望进…

数据库国产化之路(一)

数据库国产化之路(一) 1、前言:适配海量数据库过程中的一些记录,备忘用 2、海量数据库基于的pg版本,查看PG_VERSION文件为9.2。 3、MySQL中的IF函数替代,一开始的方案是从网上找了个if函数,后来发现CASE WHEN其实能完成…

马拉松报名小程序的设计

管理员账户功能包括:系统首页,个人中心,用户管理,赛事信息管理,赛事报名管理,活动商城管理,留言板管理,系统管理 微信端账号功能包括:系统首页,赛事信息&…

字节码编程javassist之定义各种属性

写在前面 源码 。 本文看下如何使用javassist来定义属性。 1:程序 package com.dahuyou.javassist.generateFieldAndMethod;import javassist.*;import java.lang.reflect.Method;public class JustDoIt111 {public static void main(String[] args) throws Exce…