如何使用matplotlib.pyplot将y轴上方的低点设置为低于高点

问题描述 投票:0回答:1

我是python编程的新手,我正在尝试从逻辑门的输出创建时序图。我正在使用raspbian,数据保存在csv中。有什么代码可以翻转y轴,使底部的“ 0”和顶部的“ 1”吗?这是因为,如果我从“ 1”开始获取数据,则图表的底部将为“ 1”,顶部将为“ 0”。

这里给出一个示例,在底部为“ 1”。 enter image description here

enter image description here

python matplotlib electronics yaxis digital
1个回答
0
投票

您可以尝试使用invert_yaxis()像这样翻转任何yaxis:

import matplotlib.pyplot as plt

x = [1, 2, 3, 4, 5]
y = [0, 1, 1, 0, 1]

plt.plot(x, y)
plt.gca().invert_yaxis()
plt.show()

或者您可以尝试手动设置y刻度:

plt.plot(x, y)
plt.yticks([0, 1])
plt.show()

或者您可以尝试手动设置y限制,如下所示:

plt.plot(x, y)
plt.ylim(0, 1)
plt.show()

如果使用子图,则可以类似方式使用这些选项中的任何一个。您可能不需要将它们全部用于同一图,但这是可以应用它们的方式:


x = [1, 2, 3, 4, 5]
y = [0, 1, 1, 0, 1]

fig, ax = plt.subplots()
ax.plot(x, y)

ax.invert_yaxis()
ax.set_yticks([0, 1])
ax.set_ylim(0, 1)

plt.show()
© www.soinside.com 2019 - 2024. All rights reserved.