построить фоновые линии в matplotlib - PullRequest
0 голосов
/ 06 августа 2020

Я хочу построить линейную диаграмму из pandas фрейма данных, но, как показано на изображении ниже, я стремлюсь нарисовать разные цвета на фоне диаграммы.

Вот как я построил линейную диаграмму.

ax = df.plot(kind='line')
plt.legend(ncol=6, bbox_to_anchor=(1.04,1))
plt.savefig("output.png", bbox_inches="tight")
plt.show()

График

Ответы [ 2 ]

1 голос
/ 06 августа 2020

Вы можете использовать axhspan и / или axvspan

Вот небольшой пример, который может вам помочь

    import matplotlib.pyplot as plt

    plt.figure()
    plt.xlim(0, 5)
    plt.ylim(0, 5)
    
    for i in range(0, 5):
        plt.axhspan(i, i+.2, facecolor='0.2', alpha=0.5)
        plt.axvspan(i, i+.5, facecolor='b', alpha=0.5)
    
    plt.show()

введите описание изображения здесь

0 голосов
/ 06 августа 2020

Вы также можете использовать fill_between()

plt.figure()
x = range(10)
c = ['red', 'blue', 'green', 'yellow', 'teal']
y = [0, 3, 6, 9, 12, 15]
for i in range(5):
    plt.fill_between(x, y1 = y[i+1], y2 = y[i], facecolor = c[i], alpha = 0.2)

введите описание изображения здесь

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...