Python Matplotlib样式文件:仅显示水平网格线

时间:2017-09-27 21:37:44

标签: python matplotlib

我试图将matplotlib样式文件(.mplstyle)定义为仅显示水平网格线。我知道我可以使用

在python中完成它
fig, ax = plt.subplots() 
ax.yaxis.grid(True)

但我想在mplstyle文件中这样做。 classic.mplstyle文件设置了axes.grid.axis: both选项。我尝试将其更改为axes.grid.axis: y,但这似乎无法改变任何内容。

是否可以在样式文件中执行此操作?

编辑:

试图让它发挥作用:

%matplotlib inline
import pandas as pd
import matplotlib.pyplot as plt
month = ['Jan', 'Feb', 'Mar', 'Apr']
volume = [1, 2, 3, 4]
plt.style.use('https://gist.githubusercontent.com/luisdelatorre012/b36899e6dca07d05e73aca80eceb3098/raw/43ae73605b5e33dfc3f0d7e5d423ff997fc8325c/tiny.mplstyle')
d = pd.DataFrame({'Month': month, 'Volume': volume})
fig, ax = plt.subplots()
b = d.plot(kind='bar', y="Volume", x="Month", ax=ax)
plt.title('Title')
plt.show()

文件tiny.mplstyle包含

axes.grid.axis: y
axes.grid: True

,别无其他。

结果如下:

gridlines

1 个答案:

答案 0 :(得分:3)

你也需要打开网格,

import matplotlib.pyplot as plt
plt.rcParams["axes.grid.axis"] ="y"
plt.rcParams["axes.grid"] = True

或在matplotlibrc文件中:

axes.grid.axis : y
axes.grid : True