gpt4 book ai didi

python - 改变 matplotlib 子图的大小

转载 作者:行者123 更新时间:2023-11-28 21:05:08 25 4
gpt4 key购买 nike

是否有一种简单的方法来修改此代码,以便在不改变轴上的比例的情况下使绘图更大?

import numpy as np
import matplotlib.pyplot as plt
import math
%matplotlib inline

a, c = -10, 10
x = np.linspace(a,c,100)
x = np.array(x)
def y(x): return np.arctan(x)

h = 0.0000001

def grad(x,h): return (y(x+h)-y(x))/h
m = grad(x,h)

plt.figure(1)
plt.subplot(121)
plt.plot(x, y(x), 'b')
plt.xlim([a,c])
plt.ylim([min(y(x)),max(y(x))])
plt.gca().set_aspect('equal', adjustable='box')

plt.subplot(122)
plt.plot(x,m,'b')
plt.xlim([a,c])
plt.ylim([min(m),max(m)])
plt.gca().set_aspect('equal', adjustable='box')

plt.subplots_adjust(wspace = 0.5)
plt.show()

enter image description here

如果我去掉 plt.gca().set_aspect('equal', adjustable='box') 绘图的大小合适,但无法按比例缩放。

最佳答案

子图被缩小,使得它们的纵横比相等。这似乎是需要的;因此,“更大”指的是什么并不十分清楚。

您仍然可以将图形放大,例如

plt.figure(1, figsize=(12,2))

然后使用 plt.subplots_adjust 调整边距和间距。 enter image description here

你也可以让坐标轴缩放,只设置数据的等宽,

plt.gca().set_aspect('equal', adjustable='datalim')

enter image description here

最后,将子图绘制在彼此下方也会使它们变大。所以你可以使用 plt.subplot(211)plt.subplot(212)enter image description here

关于python - 改变 matplotlib 子图的大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44510831/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com