我想绘制一个带有两个y刻度和一个loglog图形的图形。我按照here给出的示例:
现在,我想要关闭网格,因为如果我在一张小纸上打印它看起来很难看。然而,网格并没有消失!如果我使用非对数刻度执行此操作,一切正常,但这在某种程度上不起作用。
以下是代码:
import numpy as np
import matplotlib.pyplot as plt
fig = plt.figure()
ax1 = fig.add_subplot(111)
t = np.arange(0.01, 10.0, 0.01)
s1 = np.exp(t)
ax1.loglog(t, s1)
plt.hold(False)
plt.draw()
plt.show()
答案 0 :(得分:10)
您可以使用grid function ax1.grid(b=False)
答案 1 :(得分:0)
fig = plt.subplots(m, n, subplot_kw={'xticks': [], 'yticks': []}) # m_by_n grid
答案 2 :(得分:0)
在v1.5.3 documentation on axis_api中,陈述如下:
grid(self, b=None, which='major', axis='both', **kwargs)
打开或关闭轴网格; b 是一个布尔值。 (对于MATLAB 兼容性, b 也可以是字符串,'开'或'关'。)
如果 b 无和
len(kwargs)==0
,则切换网格状态。如果 提供 kwargs ,假设您需要一个网格, b 因此设置为 True 。
换句话说,调用ax.grid()
应该在不需要知道现有状态的情况下打开和关闭网格。 (回答上面关于arbulgazar的问题。我的声誉低于50,所以无法回复评论。)