如何使用df.plot在一张图中为一行设置不同的颜色?

时间:2019-10-03 21:38:11

标签: python-3.x matplotlib plot colors

我需要绘制具有不同颜色的线图。我创建了特殊的df列“颜色”,其中包含针对每个点的适当颜色。

我已经在这里找到了解决方案:

python/matplotlib - multicolor line

并采用上述问题的方法。首先,当我使用索引时它可以正常工作,但是现在我需要将其与其他列作图,而我不能正确处理颜色。一直只用一种颜色上色。

我使用此代码设置颜色,但是它使用“ color”列中的最后一种颜色对行进行着色。并创建一个我不知道如何从情节中删除的图例。

for color2, start, end in gen_repeating(df2['color']):
    print(start, end)
    if start > 0: # make sure lines connect
       start -= 1
    idx = df2.index[start:end+1]
    x2 = idx
    y2 = df2.loc[idx, 'age_gps_data'].tolist()


   df2.plot(x='river_km', y='age_gps_data', color=color2, ax=ax[1])

   ax[1].xaxis.set_major_locator(plt.MaxNLocator(5))
   plt.setp(ax[1].get_xticklabels())

我将不胜感激。 如何设置这些颜色以在一行中获得不同的颜色?而且在情节上没有传说。

0 个答案:

没有答案