112*_*321 2 python matplotlib subplot
有没有一种简单的方法可以修改此代码,以使绘图变大而不更改轴上的比例?
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()
Run Code Online (Sandbox Code Playgroud)
如果我摆脱了plt.gca().set_aspect('equal', adjustable='box')这些阴谋,那就说出一个不错的规模,但它们没有规模。
子图缩小,以使它们的长宽相等。这似乎是期望的;因此还不清楚“更大”指的是什么。
您仍然可以放大图,例如
plt.figure(1, figsize=(12,2))
Run Code Online (Sandbox Code Playgroud)
然后使用调整边距和间距plt.subplots_adjust。
您还可以让轴缩放,并仅对数据设置相同的外观,
plt.gca().set_aspect('equal', adjustable='datalim')
Run Code Online (Sandbox Code Playgroud)
最后,将子图绘制在彼此之下,也使它们更大。因此,您可以使用plt.subplot(211)和plt.subplot(212)。
| 归档时间: |
|
| 查看次数: |
6675 次 |
| 最近记录: |