【问题标题】:How do I make my plot look like this with matplotlib?如何使用 matplotlib 使我的情节看起来像这样?
【发布时间】:2020-07-18 17:11:57
【问题描述】:

所以现在我正在尝试为分配模拟泊松过程,这是目前的代码:

import matplotlib.pyplot as plt
import numpy as np
import seaborn as sns

y = np.arange(0,21,1)
x = np.cumsum(np.random.exponential(2,21))

print(y)
print(x)

sns.set()
plt.plot(x,y)
plt.show()

当我尝试绘制它时出现了问题。正如预期的那样,上面的代码生成了一个正常的 matplotlib 图,如下所示:

但是我需要它看起来像这样:

有没有简单的方法?我尝试弄乱条形图,但无法生成看起来不错的东西。

【问题讨论】:

  • plt.plot(x,y) 替换为plt.step(x,y)。我不确定您是只是在寻找阶梯图还是想减少数据点的数量。
  • @AshwinGeetD'Sa 是的,谢谢,我不知道这样的情节是如何被调用的,所以即使在检查了 matplotlib 文档之后我也很难找到它。谢谢,这正是我需要的

标签: python-3.x matplotlib plot


【解决方案1】:

您要绘制的图形在 matplotlib 中称为阶梯图。为了绘制它用plt.step(x,y)替换plt.plot(x,y)

所以,你的代码变成了:

import matplotlib.pyplot as plt
import numpy as np
import seaborn as sns

y = np.arange(0,21,1)
x = np.cumsum(np.random.exponential(2,21))

print(y)
print(x)

sns.set()
plt.step(x,y)
plt.show()

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-12-17
    • 2012-03-25
    • 2014-08-24
    • 2020-05-18
    • 2023-04-07
    • 1970-01-01
    • 2017-02-05
    相关资源
    最近更新 更多