消除 Matplotlib 图中 X 轴上的空白
在 matplotlib 中,在图的边缘设置了自动边距以确保数据很好地适合轴脊。 y 轴上的边距可能是理想的,但在某些情况下,可能最好在 x 轴上删除它。
使用 plt.margins() 的解决方案
要将 x 轴上的边距设置为 0,请使用以下代码:
plt.margins(x=0) # Context-dependent syntax ax.margins(x=0) # Explicitly set margin on specified axis
或者,要删除整个脚本中两个轴上的边距,请使用:
plt.rcParams['axes.xmargin'] = 0 plt.rcParams['axes.ymargin'] = 0
要获得永久解决方案,请修改 matplotlib rc 文件:
axes.xmargin : 0 axes.ymargin : 0
使用 Seaborn 的示例
import seaborn as sns import matplotlib.pyplot as plt sns.load_dataset('tips').plot(ax=ax1, title='Default Margin') sns.load_dataset('tips').plot(ax=ax2, title='Margins: x=0') ax2.margins(x=0)
使用 plt.xlim 的解决方案()
或者,您可以使用 plt.xlim() 手动设置轴的限制:
plt.xlim(min(dates), max(dates)) # Set x-axis limits to remove white space
这将调整绘图以消除轴之间的任何空白x 轴的起点和终点。
以上是如何消除 Matplotlib 图中 X 轴上的空白?的详细内容。更多信息请关注PHP中文网其他相关文章!