我正在使用IPython Notebook。我在同一个图中有一堆图。 我需要使用不同的轴参数显示这些图,即以下四种情况:
Cases x-axis y-axis
1 non-log non-log
2 non-log log
3 log non-log
4 log log
有这样简单的方法:
#many lines of code for generating bunch of plots
plt.show()
#figure shown with non-log axis
ax.set_yscale('log')
plt.show()
#figure shown with log y-axis
ax.set_xscale('log')
plt.show()
#figure shown with log x-axis and log y-axis
答案 0 :(得分:1)
plt.show()
将显示图形并在之后丢弃它们。它不打算在脚本中多次使用。
您拥有的选项是在函数中进行绘图,并根据参数创建不同的图形。以下将为所有4个案例创建数据:
import matplotlib.pyplot as plt
import numpy as np
x = np.logspace(0,3, 250)
y = .4*x
def plot(x,y,logx=False, logy=False):
fig, ax = plt.subplots()
if logy: ax.set_yscale('log')
if logx: ax.set_xscale('log')
ax.plot(x,y)
plot(x,y)
plot(x,y, True, False)
plot(x,y, False, True)
plot(x,y, True, True)
plt.show()