2016-08-22 8 views
0

ごとに異なる色:matplotlibの、次のデータフレームと折れ線グラフ指定した行

import matplotlib.pyplot as plt 
from cycler import cycler 
import numpy as np 
fig, ax=plt.subplots(1) 
d=pd.DataFrame({'a':[1,2,3,4], 
       'b':[2,3,4,5], 
       'c':[3,4,5,6]}) 
colors=['r','g','b'] 
ax.set_prop_cycle(cycler('color', [colors])) 
ax.plot(d[:3],'-ko',d[2:],'--ko') 
plt.show() 

enter image description here

あなたは、私が1色あたりを割り当てるしようとしていますことに気づくでしょうそれは動作していません。 ax.plotのcolors引数を使ってみました。 これはまっすぐであるはずです。

ありがとうございました。

+0

' 'でk''''「-ko 'と' '--ko''は色を黒に設定します。おそらくそれを削除しようとしますか? – tom

+0

それは理にかなっていますが、私が行った場合、ValueError:to_rgba:無効なrgba arg "['r'、 'g'、b ']" 文字列をfloatに変換できませんでした:' r ' –

答えて

1

コードには2つの問題があります。

  1. '-ko''k''--ko'黒に色を設定しますので、我々は

  2. colorsが既にリストですが、set_prop_cycleへの呼び出しで再び角括弧の内側にそれを入れていることを削除する必要がありますしたがって、ネストされたリスト:[['r','g','b']]になりました。そこに角括弧を削除し、それはすべて正常に動作します:ax.set_prop_cycle(cycler('color', colors))

  3. ので

、あなたのコードは次のようになります。

import matplotlib.pyplot as plt 
import pandas as pd 
from cycler import cycler 
import numpy as np 
fig, ax=plt.subplots(1) 
d=pd.DataFrame({'a':[1,2,3,4], 
       'b':[2,3,4,5], 
       'c':[3,4,5,6]}) 
colors=['r','g','b'] 
ax.set_prop_cycle(cycler('color', colors)) 
ax.plot(d[:3],'-o',d[2:],'--o') 
plt.show() 

enter image description here

+0

パーフェクト。ありがとう! –

関連する問題