gpt4 book ai didi

python - 如何仅显示条形图 matplotlib 的轮廓

转载 作者:行者123 更新时间:2023-12-03 19:20:38 26 4
gpt4 key购买 nike

我在 中将数据绘制为条形图matplotlib 并且我试图只显示条形的轮廓,以便它显示为数据的“阶梯图”。

我在下面添加了我的代码以及所需输出的图像。
plt.bar(x, y, align='center', width=0.1, edgecolor='black', color='none')
我有的情节:

Current Plot

我想要的情节:

enter image description here

有没有其他图书馆可以产生这个? bar 关键字参数似乎没有任何东西可以。

最佳答案

您的图像看起来像一个围绕每个 x,y 值的水平函数。下面的代码模拟了这一点:

  • 对于每个 x,y:创建两个新点,一个位于 x-0.5,一个位于 x+0.5,两者都具有相同的 y
  • 要在末端闭合形状,请在开头添加 (x[0]-0.5, 0),在末尾添加 (x[-1]+0.5, 0)。
  • import numpy as np
    from matplotlib import pyplot as plt

    x = np.arange(0, 30, 1)
    y = np.random.uniform(2, 10, 30)
    xs = [x[0] - 0.5]
    ys = [0]
    for i in range(len(x)):
    xs.append(x[i] - 0.5)
    xs.append(x[i] + 0.5)
    ys.append(y[i])
    ys.append(y[i])
    xs.append(x[-1] + 0.5)
    ys.append(0)
    plt.plot(xs, ys, color='dodgerblue')
    # optionally color the area below the curve
    plt.fill_between(xs, 0, ys, color='gold')

    PS:@AsishM。在评论中提到 matplotlib 也有自己的 step 函数。如果该功能满足,请使用该功能。如果您需要一些额外的控制或变化,这个答案可以作为一个开始,例如为曲线下方的区域着色或处理末端的形状。

    example plot

    关于python - 如何仅显示条形图 matplotlib 的轮廓,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59446648/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com