如何在Matplotlib中设置轴从角开始[复制]

pod7payv  于 2023-05-07  发布在  其他
关注(0)|答案(1)|浏览(107)

此问题已在此处有答案

How can I change the x axis so there is no white space?(2个答案)
5年前关闭。
这是我绘制的一个图表:

# MatPlotlib
import matplotlib.pyplot as plt
# Scientific libraries
import numpy as np

plt.figure(1)

points = np.array([(100, 6.09),
                   (111, 8.42),
                   (119, 10.6),
                   (129, 12.5),
                   (139, 14.9),
                   (149, 17.2),
                   (200, 28.9),
                   (250, 40.9),
                   (299, 52.4),
                   (349, 64.7),
                   (400, 76.9)])

# get x and y vectors
x = points[:,0]
y = points[:,1]
# calculate polynomial
z = np.polyfit(x, y, 3)
f = np.poly1d(z)
# calculate new x's and y's
x_new = np.linspace(x[0], x[-1], 50)
y_new = f(x_new)

plt.plot(x,y,'bo', x_new, y_new)

plt.show()

我发现我绘制的所有图形都没有从盒子的角开始的轴,谁能告诉我如何纠正这个问题?除了在图表中设置限制之外

3zwjbxry

3zwjbxry1#

默认情况下,matplotlib在轴的所有边添加5%的边距。要删除该边距,可以使用plt.margins(0)

import matplotlib.pyplot as plt

plt.plot([1,2,3],[1,2,3], marker="o")
plt.margins(0)
plt.show()

要更改整个脚本的边距,可以使用

plt.rcParams['axes.xmargin'] = 0
plt.rcParams['axes.ymargin'] = 0

或者您可以更改您的rc file以包含这些设置。

相关问题