2013-04-17 5 views
11

曲線の色が別の変数Tの値に依存する曲線を(x、y)平面にプロットしたいと考えています.xは1D numpy配列、 yは1Dのnumpyの配列です。Matplotlibが色を連続的に変更する1行をプロットする

T=np.linspace(0,1,np.size(x))**2 
fig = plt.figure() 
ax = fig.add_subplot(111) 
ax.plot(x,y) 

Iは、Tの値(Tの値は、すべての(x、y)のペアに対して存在する)に応じて(RdBuカラーマップを使用して)ラインが青から赤に変更します。

私はこれを見つけましたが、私の単純な例にそれを歪める方法はわかりません。私の例のためにlinecollectionを使用するにはどうすればよいですか? http://matplotlib.org/examples/pylab_examples/multicolored_line.html

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

+1

便利です希望は、あなたは何を試してみましたか? 2番目のサンプルプロットの問題は何ですか?私たちがあなたを助けることができるように、フレーズクリアな質問をしてください。 –

答えて

4

一つアイデアは、N個のセグメントにあなたのプロットを分割して連続的にのいずれかでR、G又はBの1つ(または組合せ)を変える(R、G、B)=カラーを使用して色を設定することができ

import pylab as plt 
import numpy as np 

# Make some data 
n=1000 
x=np.linspace(0,100,n) 
y=np.sin(x) 

# Your colouring array 
T=np.linspace(0,1,np.size(x))**2 
fig = plt.figure() 
ax = fig.add_subplot(111) 

# Segement plot and colour depending on T 
s = 10 # Segment length 
for i in range(0,n-s,s): 
    ax.plot(x[i:i+s+1],y[i:i+s+1],color=(0.0,0.5,T[i])) 

これは

グレッグ

+0

これは完全に正常に動作します。本当にありがとう! – Cokes

+0

@Cokesこれで問題が解決したら、それを受け入れるべきです(左の大きなチェックマーク)。 – tacaswell

+0

'LineCollection'でもっとうまくいくかもしれません。 – tacaswell

関連する問題