2017-02-25 17 views
1

I列aはダミー変数を表し、次のパンダDATAFRAME、持っている:条件付きカラー

Panda Dataframe

私は何をしたいのは、私のマーカーの値以下cmap='jet'色を与えることですが列bの値が1のときは、灰色にしたい場合を除いて、列b。

どうすればいいですか?

答えて

2

あなたは1、プロットに等しい自分の価値観をマークする必要があります。

import matplotlib.pyplot as plt 
import numpy as np 

# test data 
t = np.linspace(0, 2 * np.pi, 30) 
x = np.sin(t) 
x[3] = 1 
y = np.cos(t) 

# indices for 'bad' values 
indices = x == 1 
# calc colors from jet cmap 
cmap = plt.get_cmap('jet') 
colors = cmap((y - y.min())/y.ptp()) 

# normal values 
plt.scatter(t[~indices], x[~indices], c = colors[~indices], cmap = cmap) 
# bad values 
plt.scatter(t[indices], x[indices], c = 'grey') 
plt.show() 

enter image description here

配列さt、xとyはパンダシリーズを表します。

+0

完璧に動作します!どうもありがとう。 – MattnDo