首页 > 编程语言 >Python Matplotlib 绘图辅助功能

Python Matplotlib 绘图辅助功能

时间:2024-01-18 22:34:50浏览次数:33  
标签:None plt Python 标签 Matplotlib 图表 绘图 设置 fontsize

 

1、添加标题和轴标签

使用 plt.title("标题文本") 方法来添加图表标题。使用 plt.xlabel("X轴标签") 和 plt.ylabel("Y轴标签") 方法来添加X轴和Y轴的标签。常用参数如下,

函数

描述

plt.title( label, loc='center', pad=None, 

fontsize=None, color=None,

 style=None, weight=None )

设置图表的标题。

label 是标题文本;

loc 设置标题位置;

pad 设置标题与图表顶部的距离;

fontsize 设置字体大小;

color 设置字体颜色;

style 设置字体样式;

weight 设置字体粗细。

plt.xlabel( xlabel, labelpad=None, 

loc=None, fontsize=None, color=None )

设置x轴的标签。

xlabel 是x轴标签文本;

labelpad 设置标签与轴的距离;

loc 设置标签位置;

fontsize 设置字体大小;

color 设置字体颜色。

plt.ylabel( ylabel, labelpad=None, 

loc=None, fontsize=None, color=None )

设置y轴的标签。

ylabel 是y轴标签文本;

labelpad 设置标签与轴的距离;

loc 设置标签位置;

fontsize 设置字体大小;

color 设置字体颜色。

使用示例:

import matplotlib.pyplot as plt

# 创建数据
x = [1, 2, 3, 4, 5]
y = [2, 3, 5, 7, 11]

# 绘制线图
plt.plot(x, y)

# 设置图表标题和轴标签
plt.title('cjavapy', loc='left', fontsize='large', color='blue', style='italic', weight='bold')
plt.xlabel('X Axis', labelpad=15, fontsize='medium', color='green')
plt.ylabel('Y Axis', labelpad=20, fontsize='medium', color='red')

# 使用 plt.draw() 显示画布
plt.draw()
# 显示图表
plt.show()

2、 添加图例

使用 plt.legend() 添加图例,通常在绘图命令中使用 label 参数标识不同的数据系列。它可以帮助解释图表中的数据点或线条代表什么。常用参数如下,

参数

描述

label

为绘制的图形元素设置标签,

这些标签将在图例中显示。

loc

设置图例的位置,

如 'upper right', 'upper left', 'lower left', 'lower right', 'right' 等。

fontsize

设置图例中字体的大小。

title

给图例添加标题。

shadow

为图例添加阴影效果。

frameon

设置是否显示图例边框。

使用示例:

import matplotlib.pyplot as plt

# 创建数据
x = [1, 2, 3, 4, 5]
y1 = [2, 3, 5, 7, 11]
y2 = [1, 4, 6, 8, 10]

# 绘制两条线,并为它们添加标签
plt.plot(x, y1, marker='o', label='Prime Numbers')
plt.plot(x, y2, marker='s', label='Even Numbers')

# 添加图例,并自定义图例
plt.legend(loc='upper left', fontsize='large', title='Number Types', shadow=True, frameon=True)

# 添加标题和轴标签
plt.title('cjavapy Legend')
plt.xlabel('X Axis')
plt.ylabel('Y Axis')

# 使用 plt.draw() 显示画布
plt.draw()
# 显示图表
plt.show()

3、显示网格线

显示网格线是通过 plt.grid() 函数实现的。网格线有助于更好地理解图表中的数据点和趋势。常用参数如下,

参数

描述

color

设置网格线的颜色。

linestyle

设置网格线的样式,如 '-', '--', '-.', ':'。

linewidth

设置网格线的宽度。

axis

指定要显示网格线的轴,

可选值为 'x' , 'y' , 'both'。

使用示例:

import matplotlib.pyplot as plt

# 创建数据
x = [1, 2, 3, 4, 5]
y = [2, 3, 5, 7, 11]

# 绘制线图
plt.plot(x, y)

# 显示网格线并自定义其外观
plt.grid(True, color='gray', linestyle='--', linewidth=0.5, axis='both')

# 添加标题和轴标签
plt.title('cjavapy Custom Grid Lines')
plt.xlabel('X Axis')
plt.ylabel('Y Axis')

# 使用 plt.draw() 显示画布
plt.draw()
# 显示图表
plt.show()

4、添加注释

可以使用 plt.annotate() 函数在图表中添加注释。这个功能对于突出显示特定的数据点或向读者提供额外信息非常有用。常用参数如下,

import matplotlib.pyplot as plt

# 创建数据
x = [1, 2, 3, 4, 5]
y = [2, 3, 5, 7, 11]

# 绘制线图
plt.plot(x, y)

# 添加注释
plt.annotate('Highest Point', xy=(5, 11), xytext=(3, 6),
             arrowprops=dict(facecolor='black', shrink=0.05))

# 添加标题和轴标签
plt.title('cjavapy with Annotation')
plt.xlabel('X Axis')
plt.ylabel('Y Axis')

# 使用 plt.draw() 显示画布
plt.draw()

# 显示图表
plt.show()

5、自定义轴刻度

可以自定义轴刻度以改善图表的可读性和美观性。这可以通过设置轴的刻度标签和刻度位置来完成。常用参数如下,

函数

描述

plt.xticks(ticks, labels, 

rotation, fontsize)

用于自定义x轴的刻度和标签。

ticks 指定刻度位置;

labels 指定刻度标签;

rotation 设置标签旋转角度;

fontsize 设置字体大小。

plt.yticks(ticks, labels, 

rotation, fontsize)

用于自定义y轴的刻度和标签。

ticks 指定刻度位置;

labels 指定刻度标签;

rotation 设置标签旋转角度;

fontsize 设置字体大小。

使用示例:

import matplotlib.pyplot as plt
import numpy as np

# 创建数据
x = np.linspace(0, 10, 100)
y = np.sin(x)

# 绘制图表
plt.plot(x, y)

# 自定义x轴刻度
plt.xticks(ticks=[0, np.pi/2, np.pi, 3*np.pi/2, 2*np.pi], 
           labels=['0', 'π/2', 'π', '3π/2', '2π'], 
           rotation=45, 
           fontsize='small')

# 自定义y轴刻度
plt.yticks(ticks=[-1, 0, 1], 
           labels=['Min', 'Zero', 'Max'], 
           rotation=30, 
           fontsize='medium')

# 添加标题和轴标签
plt.title('cjavapy')
plt.xlabel('X Axis')
plt.ylabel('Y Axis')

# 使用 plt.draw() 显示画布
plt.draw()
# 显示图表
plt.show()

6、控制轴的范围

可以通过 plt.xlim() 和 plt.ylim() 函数控制 x 轴和 y 轴的显示范围。对于聚焦特定区域的数据或排除异常值非常有用。常用参数如下,

plt.xlim() 常用参数:

参数

描述

left

设置x轴的最小值

right

设置x轴的最大值

plt.ylim()常用参数:

参数

描述

bottom

设置y轴的最小值

top

设置y轴的最大值

使用示例:

import matplotlib.pyplot as plt
import numpy as np

# 创建数据
x = np.linspace(0, 20, 100)
y = np.sin(x)

# 绘制图表
plt.plot(x, y)

# 控制 x 轴和 y 轴的范围
plt.xlim(left=0, right=10)  # 设置 x 轴的范围为 0 到 10
plt.ylim(bottom=-0.5, top=0.5)  # 设置 y 轴的范围为 -0.5 到 0.5

# 添加标题和轴标签
plt.title('cjavapy')
plt.xlabel('X Axis')
plt.ylabel('Y Axis')

# 使用 plt.draw() 显示画布
plt.draw()
# 显示图表
plt.show()

7、利用子图(Subplots)

使用plt.subplots() 是用于创建一个带有多个子图(subplots)的图表布局的强大工具。对于比较不同数据集或展示数据的不同视角非常有用。常用参数如下,

参数

描述

nrows

子图网格中的行数。

ncols

子图网格中的列数。

figsize

整个图表的大小,

以英寸为单位,

格式为 (width, height)。

sharex

如果为 True,所有子图将共享 x 轴。

sharey

如果为 True,所有子图将共享 y 轴。

tight_layout

如果为 True,自动调整子图参数以适应图表区域。

subplot_kw

传递给 add_subplot 调用的关键字参数字典。

使用示例:Python Matplotlib 绘图辅助功能-CJavaPy

标签:None,plt,Python,标签,Matplotlib,图表,绘图,设置,fontsize
From: https://www.cnblogs.com/tinyblog/p/17973548

相关文章

  • python ssh连接mysql
    fromsshtunnelimportSSHTunnelForwarderimportpymysqlclassMySqlSSH:def__init__(self):self.server=SSHTunnelForwarder(ssh_address_or_host=('13.229.92.6',22),#sshhostssh_username='lenox......
  • CPLEX通过Python API获取Gap值的方法
    写在前面最近在使用Cplex求解模型,尽管Cplex的PythonAPI会自动输出引擎日志,但在多次求解中一次次看引擎日志找Gap值并做实验记录很麻烦,所以需要找到获取Gap值的方法。然而我在Cplex的官方文档中并没有找到这个方法,然后我就一个个去试这些方法,可算是给我试出来了。解决方法在Cpl......
  • Python - Playwright安装
    前言:Playwright是专门为满足端到端测试的需要而创建的。Playwright支持所有现代渲染引擎,包括Chromium、WebKit(Safari的浏览器引擎)和Firefox。在Windows、Linux和macOS上进行本地测试或在CI上进行测试.与Selenium+driver不同的是,Pw需要使用定制版的浏览器。如果本地......
  • python中的+=
    注意点:就地修改: 使用+=会就地修改可变对象,如列表或字典,而不是创建一个新的对象。这意味着原始对象会被改变。与+运算符的区别:+=与+运算符不同。对于不可变对象(如字符串、元组等),+=通常会创建一个新对象,而不是就地修改。可变对象vs不可变对象:对于可变对象(如列表、字典),+......
  • 波达方向估计(DOA)-Python代码实现MVDR
    https://mp.weixin.qq.com/s/61I1aBTwJ3ykw0uuceLKkQ模拟一个由三根全向天线组成的阵列,然后使用数组来模拟到达阵列的信号。相邻天线之间:1/2波长(也称为“半波长间隔”)。将模拟发射机的信号以一定角度theta到达该阵列。另外在这个接收到的信号中添加噪声。importnumpyasnp......
  • 波达方向估计(DOA)-Python代码实现
    https://mp.weixin.qq.com/s/fMGc8ziglySGKr1fY8Jvkw模拟一个由三根全向天线组成的阵列,然后使用数组来模拟到达阵列的信号。相邻天线之间距离为1/2波长(也称为“半波长间隔”)。将模拟发射机的信号以一定角度theta到达该阵列。另外在这个接收到的信号中添加噪声。importnumpy......
  • 猜字谜python文心一言
    猜字谜是一种经典的智力游戏,通过猜测谜底中的字母来逐步揭示谜底。在Python中,我们可以使用一些简单的方法来实现猜字谜游戏,并提供一些提示和反馈,使游戏更加有趣。首先,让我们来看看猜字谜游戏的基本流程。游戏开始时,我们会先设定一个谜底,这个谜底可以是任意长度的单词或短语。然后,......
  • python之数据类型
    字符串详解                                          1.centerdefcenter(self,*args,**kwargs):#realsignatureunknown"""Returnacenteredstringoflengthwi......
  • Python_python读写图片以及对应的库比较
    图片读写通过numpy来做数据计算的沟通JPEG是一种有损格式, 图像PNG,是一种无损格式cv2.imdecode()作用是将图像数据从存储格式中解析出来并转化为OpenCV中的图像格式 imdecode得到的影像波段顺序是RGBnp.fromfile将文本或二进制文件中数据构造成数组 cv2.imencod......
  • WhisperService 多GPU python
    如何实现“WhisperService多GPUPython”作为一名经验丰富的开发者,你将教会一位刚入行的小白如何实现“WhisperService多GPUPython”。下面是整个实现过程的步骤:步骤说明步骤一导入必要的库并设置GPU步骤二加载数据步骤三构建模型步骤四配置训练参数......