当前位置:网站首页>(subplots用法)matplotlib如何绘制多个子图(轴域)
(subplots用法)matplotlib如何绘制多个子图(轴域)
2022-07-03 05:07:00 【音程】
import matplotlib.pyplot as plt
#准备数据。
x=np.arange(3)
y1=np.random.rand((3))
y2=np.random.rand((3))
粗略
#得到绘图区以及子图。
fig,(ax1,ax2)=plt.subplots(1,2,figsize=(10,4))#指定绘图区为(10,4),并且一行两列,默认两列各占一半,即(5,4)(5,4)
ax1.plot(x,y1)
ax2.plot(x,y2)

精细
1.刻度
子图的刻度和plt的那个刻度用法不一样。
后者是:
plt.xticks(x,label)#就可以在x的位置处填写label值。
但是子图的用法是:
ax1.set_xticks(x)#在x的位置处标记数字。
ax1.set_xticklabels(label)#在x处标记标签。
效果如下:
#得到绘图区以及子图。
fig,(ax1,ax2)=plt.subplots(1,2,figsize=(10,4))#指定绘图区为(10,4),并且一行两列,默认两列各占一半,即(5,4)(5,4)
ax1.plot(x,y1)
ax2.plot(x,y2)
ax1.set_xticks(x)#在x的位置处标记数字。
# ax1.set_xticklabels(label)#在x处标记标签。

#得到绘图区以及子图。
fig,(ax1,ax2)=plt.subplots(1,2,figsize=(10,4))#指定绘图区为(10,4),并且一行两列,默认两列各占一半,即(5,4)(5,4)
ax1.plot(x,y1)
ax2.plot(x,y2)
ax1.set_xticks(x)#在x的位置处标记数字。
label=["a","b","c"]
ax1.set_xticklabels(label)#在x处标记标签。

2.大小
现在我们可以看到,我们上面设置整个绘图区是(10,4),然后默认就是各自一半,那么如何精细控制每一个子图的大小呢?
#得到绘图区以及子图。
fig,(ax1,ax2)=plt.subplots(1,2,figsize=(10,4))#指定绘图区为(10,4),并且一行两列,默认两列各占一半,即(5,4)(5,4)
ax1.plot(x,y1)
ax2.plot(x,y2)
ax1.set_position((0.1,0.1,0.8,0.8))#将ax1的左下角放在绘图区的0.1,0.1位置处(0.1指代的是绘图区的10%的意思)。ax1的左下角放置好了之后,宽为80%,高为80%。注意,此时ax1的右上角的位置是0.9,0.9。
ax2.set_position((0.9,0.9,0.1,0.1))#所以这里从0.9开始,否则会重叠。然后只占比0.1,刚好用完绘图区。

可以看到,一个大,一个小。
绝招
其实如果你有时间的话,子图(轴域)这个类官方文档中有写,axes其他属性可以见https://matplotlib.org/stable/api/axes_api.html?highlight=axes#module-matplotlib.axes。
总之,要有类的思想,axes(子图)是在figure(画布)中的。那为什么一到画图就很难学了呢?我的感觉是官方为了方便大家,构建子图,我们根本不是去构造axes类,而是调用五花八门的方法,例如上面的
subplots()
这样子,很容易上手,方便新手,但是却大大损害了进阶人士的理解,哎。
按照类的思想,我们应该如下:
先创建绘图区对象figure,然后将这个对象以及子图位置传入axes类的构造函数中,得到子图。然后绘制。
边栏推荐
- 1107 social clusters (30 points)
- Audio Focus Series: write a demo to understand audio focus and audiomananger
- JDBC database operation
- 【批处理DOS-CMD命令-汇总和小结】-CMD窗口的设置与操作命令-关闭cmd窗口、退出cmd环境(exit、exit /b、goto :eof)
- Thesis reading_ Chinese medical model_ eHealth
- [set theory] relationship properties (symmetry | symmetry examples | symmetry related theorems | antisymmetry | antisymmetry examples | antisymmetry theorems)
- Interface frequency limit access
- Promise
- SSM framework integration
- On typescript and grammar
猜你喜欢

Cross platform plug-in flutter for displaying local notifications_ local_ notifications
![[basic grammar] Snake game written in C language](/img/cb/83631ef3ccd7047ca42d33dc49bf90.jpg)
[basic grammar] Snake game written in C language

Web APIs exclusivity
![[research materials] annual report of China's pension market in 2021 - Download attached](/img/24/622aeeb38de16ac84128b362ceeddb.jpg)
[research materials] annual report of China's pension market in 2021 - Download attached

LVS load balancing cluster of efficient multi-purpose cluster (NAT mode)

Apache MPM model and ab stress test
![[set theory] relationship properties (common relationship properties | relationship properties examples | relationship operation properties)](/img/af/8dfa783c87363a9d75c52e7680d508.jpg)
[set theory] relationship properties (common relationship properties | relationship properties examples | relationship operation properties)

Use posture of sudo right raising vulnerability in actual combat (cve-2021-3156)

2022-02-11 daily clock in: problem fine brush

appium1.22.x 版本后的 appium inspector 需单独安装
随机推荐
sql语句模糊查询遇到的问题
The process of browser accessing the website
Make your own dataset
Interface frequency limit access
Thesis reading_ Chinese NLP_ ELECTRA
Silent authorization login and registration of wechat applet
MySQL master-slave configuration
Market status and development prospect prediction of the global autonomous hybrid underwater glider industry in 2022
The consumption of Internet of things users is only 76 cents, and the price has become the biggest obstacle to the promotion of 5g industrial interconnection
Notes | numpy-08 Advanced index
Market status and development prospect prediction of the near infrared sensor industry of the global Internet of things in 2022
最大连续子段和(动态规划,递归,递推)
Kept hot standby and haproxy
Market status and development prospect forecast of global heat curing adhesive industry in 2022
"Hands on deep learning" pytorch edition Chapter II exercise
M1 Pro install redis
leetcode452. Detonate the balloon with the minimum number of arrows
Gbase8s composite index (I)
Sprintf formatter abnormal exit problem
Market status and development prospects of the global automatic tea picker industry in 2022