使用 matplotlibrc 控制单个轴的存在
Control existence of individual axes with matplotlibrc
我有一个 matplotlibrc 文件:
axes.color_cycle : 003A6F, BFBFBF, BFBFBF, BFBFBF, BFBFBF
..我用它来生成一个通用图:
import numpy as np
import matplotlib as mpl
from matplotlib import pyplot as plt
def makeplot(n=4):
for i in range(n):
plt.plot(np.sin(np.linspace(0, (i+1) * np.pi)),zorder=n-i)
plt.title("Title")
plt.ylim(-1.25,1.25)
plt.show()
def apply_format(fmt, plot_function, params={}):
with plt.style.context(fmt):
plot_function(**params)
apply_format('./myformat.mplstyle',makeplot,{'n':3})
我的问题是:
- 如何在
matplotlibrc
文件中指定只显示 left 和 lower 轴线?
- 我怎么知道有哪些 matplotlibrc 选项可用? (例如
axes.color_cycle : b, r
)
1) 不确定如何在 matplotlibrc 文件中指定它。浏览文档后,似乎不可能(找不到对 top/bottom ticks/axes 的任何引用)。但是,如果您只想通过删除 top/bottom 轴线来满足仅显示 left/lower 轴线的原始功能,则可以使用 tick_params()
.
def makeplot(n=4):
for i in range(n):
plt.plot(np.sin(np.linspace(0, (i+1) * np.pi)),zorder=n-i)
plt.title("Title")
plt.ylim(-1.25,1.25)
plt.tick_params(axis='x', top='off')
plt.tick_params(axis='y', right='off')
plt.show()
2) 见documentation!请注意 axes.color_cycle
已弃用(请改用 axes.prop_cycle
)。
我有一个 matplotlibrc 文件:
axes.color_cycle : 003A6F, BFBFBF, BFBFBF, BFBFBF, BFBFBF
..我用它来生成一个通用图:
import numpy as np
import matplotlib as mpl
from matplotlib import pyplot as plt
def makeplot(n=4):
for i in range(n):
plt.plot(np.sin(np.linspace(0, (i+1) * np.pi)),zorder=n-i)
plt.title("Title")
plt.ylim(-1.25,1.25)
plt.show()
def apply_format(fmt, plot_function, params={}):
with plt.style.context(fmt):
plot_function(**params)
apply_format('./myformat.mplstyle',makeplot,{'n':3})
我的问题是:
- 如何在
matplotlibrc
文件中指定只显示 left 和 lower 轴线? - 我怎么知道有哪些 matplotlibrc 选项可用? (例如
axes.color_cycle : b, r
)
1) 不确定如何在 matplotlibrc 文件中指定它。浏览文档后,似乎不可能(找不到对 top/bottom ticks/axes 的任何引用)。但是,如果您只想通过删除 top/bottom 轴线来满足仅显示 left/lower 轴线的原始功能,则可以使用 tick_params()
.
def makeplot(n=4):
for i in range(n):
plt.plot(np.sin(np.linspace(0, (i+1) * np.pi)),zorder=n-i)
plt.title("Title")
plt.ylim(-1.25,1.25)
plt.tick_params(axis='x', top='off')
plt.tick_params(axis='y', right='off')
plt.show()
2) 见documentation!请注意 axes.color_cycle
已弃用(请改用 axes.prop_cycle
)。