Python3 - matplotlib: subplot, plot, figure, add_axes

使用matplotlib可以显示各种各样的图表

import numpy as np
import matplotlib.pyplot as plt

# Matplotlib is the most popular plotting library for Python
# It gives you control over every aspect of a figure
# It was designed to have a similar feel to MatLab's graphical plotting

x = np.linspace(0,5,11)
y = x ** 2
print("x: " , x)
print("y: ", y)
print('\n')

print("*** Show the Plot ***")
plt.plot(x,y)
plt.show()

结果如下:
在这里插入图片描述
在这里插入图片描述
要想改变图中线的颜色,可以这样改:
代码是紧跟着

plt.plot(x,y, 'r-')
plt.show()

效果如下:
在这里插入图片描述
要想给横纵坐标和图表写上名称,可以这么做:

plt.plot(x,y, 'r-')
plt.xlabel('X Label')
plt.ylabel('Y Label')
plt.title('Add Label')
plt.show()

结果如下:
在这里插入图片描述
使用subplot 来分区:

#subplot(numRows, numCols, plotNum)
# 图表的整个绘图区域被分成numRows 行 和 numCols 列
# 按照从左往右,从上到下的顺序对每个子区域进行编号,左上的子区域的编号为1
# plotNum 参数指定的子图对象所在的区域

plt.subplot(1,1,1) # 绘制 1 x 1 的图片区域
plt.plot(x,y,'r')
plt.show()

plt.subplot(2,1,2) # 绘制 2 x 1 的图片区域
plt.plot(y,x,'g')
plt.show()

结果如下:
在这里插入图片描述
在这里插入图片描述
使用Jupyter 来做练习

x = np.linspace(0,5,11)
y = x ** 2

plt.subplot(1,2,1) 
plt.plot(x,y,'r')

plt.subplot(1,2,2) 
plt.plot(y,x,'g')
plt.show()

在这里插入图片描述

使用figure(), add_axes() 来调整图片位置

x = np.linspace(0,5,11)
y = x ** 2

fig = plt.figure()
axes = fig.add_axes([0.1,0.1,0.8,0.8]) # 分别对应:left, bottom, width, height
axes.plot(x,y)
axes.set_title('area1')

axes_new = fig.add_axes([0.2,0.5,0.3,0.3]) # 分别对应: left, bottom, width, height
axes_new.plot(x,y,'g')
axes_new.set_title('area2')
plt.show()

结果如下:
在这里插入图片描述
如果觉得不错,就点赞或者关注或者留言~~
谢谢各位~ ~

### 回答1: add_axes 方法是 matplotlib 中用于在绘图区域中添加新的坐标轴的方法。它可以让你在现有的图中添加一个新的子图。使用方法如下: ``` add_axes(rect, **kwargs) ``` 其中,rect 是一个列表,用于指定新坐标轴在图中的位置。列表中包含四个元素,分别表示新坐标轴的左、下、宽和高。例如: ``` ax = fig.add_axes([0.1, 0.1, 0.8, 0.8]) ``` 这意味着新坐标轴的左边缘位于图的左边缘的 10% 处,下边缘位于图的下边缘的 10% 处,宽度为图的 80%,高度为图的 80%。 除了 rect 参数之外,还可以使用关键字参数来指定新坐标轴的其他属性。例如,可以使用 projection 参数来指定坐标轴的投影方式,使用 sharex 和 sharey 参数来指定新坐标轴与其他坐标轴的关联关系等。 示例代码: ```python import matplotlib.pyplot as plt # 创建一个新的图形 fig = plt.figure() # 在图形中添加一个新的坐标轴 ax = fig.add_axes([0.1, 0.1, 0.8, 0.8]) # 在新坐标轴中绘制一条折线 ax.plot([1, 2, 3, 4], [1, 4, 9, 16]) # 显示图形 plt.show() ``` 运行上述代码,将会在 ### 回答2: matplotlib 中的 add_axes 方法是用来手动添加一个坐标轴到图形中的。该方法的语法如下: add_axes(rectangle, projection=None, polar=False, **kwargs) 其中,rectangle 指定了新坐标轴的位置和大小。它是一个由四个数值组成的列表,分别表示左、下、宽和高。取值范围是[0, 1],表示相对于整个图形的比例。 projection 参数表示要使用的坐标轴投影类型,默认为 None。支持的投影类型有 'polar'、'3d' 等。如果不指定 projection,则新添加的坐标轴将具有与主坐标轴相同的投影类型。 polar 参数表示添加的坐标轴是否为极坐标系,默认为 False。如果设置为 True,则新添加的坐标轴将具有极坐标系的属性。 kwargs 参数可以用来设置其他坐标轴属性,如坐标轴的标签、刻度、颜色等。可以以字典形式传递给 add_axes 方法。 使用 add_axes 方法,可以自由地在图形中创建新的坐标轴,并根据需要定制其位置、投影类型和属性。这个方法特别适用于需要在一个图形中绘制多个坐标系图的情况,例如绘制双坐标轴、辅助坐标轴等。 ### 回答3: matplotlib中的add_axes方法用于在当前图形中添加一个坐标轴。 它的语法如下:add_axes(rect, projection=None, polar=False, **kwargs)。 参数说明: - rect:用于指定子图的位置和尺寸的四个坐标(left,bottom,width,height),取值范围在0到1之间。 - projection:该参数用于指定坐标轴的投影类型,例如'polar'表示极坐标。 - polar:该参数主要用于极坐标的设置,如果设置为True,则会显示极坐标系。 - **kwargs:可选参数,用于设置其他坐标轴的属性,比如坐标轴标签、刻度等。 使用add_axes方法时,需要先创建一个图形对象,并通过add_subplotadd_axes方法将其添加到图形中,然后再通过add_axes方法添加坐标轴。 例如,创建一个2x2的图形,然后使用add_axes方法添加一个坐标轴: ``` import matplotlib.pyplot as plt fig = plt.figure() # 创建一个图形对象 ax1 = fig.add_subplot(2, 2, 1) # 添加子图1 ax2 = fig.add_subplot(2, 2, 2) # 添加子图2 rect = [0.1, 0.1, 0.4, 0.4] # 指定坐标轴的位置和尺寸 ax3 = fig.add_axes(rect) # 添加坐标轴 ax3.plot([1, 2, 3, 4], [1, 4, 2, 3]) # 在坐标轴上绘图 plt.show() # 显示图形 ``` 上述代码中,我们首先创建了一个2x2的图形对象fig,然后使用add_subplot方法添加了两个子图ax1和ax2。接着,通过指定坐标轴的位置和尺寸,使用add_axes方法添加了一个新的坐标轴ax3。最后,我们在ax3上绘制了一个简单的折线图。最后调用plt.show()方法显示图形。
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值