如何反转x轴或y轴
我有一个散点图,上面有一堆随机的 x 和 y 坐标。目前,Y 轴是从 0 开始,一直到最大值。我想把 Y 轴的起点改成最大值,然后往下到 0。
points = [(10,5), (5,11), (24,13), (7,8)]
x_arr = []
y_arr = []
for x,y in points:
x_arr.append(x)
y_arr.append(y)
plt.scatter(x_arr,y_arr)
10 个回答
59
你也可以使用散点图的坐标轴对象提供的函数。
scatter = plt.scatter(x, y)
ax = scatter.axes
ax.invert_xaxis()
ax.invert_yaxis()
92
DisplacedAussie的回答是对的,但通常有个更简单的方法,就是直接反转你想要的那一条轴:
plt.scatter(x_arr, y_arr)
ax = plt.gca()
ax.set_ylim(ax.get_ylim()[::-1])
这里的 gca()
函数是用来获取当前的坐标轴实例,而 [::-1]
则是用来反转这个列表的。
816
现在有一个新的接口,让这个过程变得更简单了。
plt.gca().invert_xaxis()
和/或
plt.gca().invert_yaxis()