2013-04-14 26 views
5

私は、コンピュータ画面の指定された領域で被験者の視線を追跡しています。私はpyplotのhist2d関数を使って凝視ヒートマップを構築しています。ここでhist2dプロットのデータレス領域をゼロ値の色に設定するにはどうすればよいですか?

は簡単な例です:あなたが見ることができるように

figure() 
hist2d(xval, yval, bins=1000) 
xlim([-6, 6]) 
ylim([-4.5, 4.5]) 

enter image description here

、私のデータの範囲外の重要な領域があります。しかし、私はゼロ値を示す青色にこの領域を設定したいと思います。作品のこの種の

figure() 
imshow(np.array([[0] * 8] * 12), extent=[-6, 6, -4.5, 4.5]) 
hist2d(xval, yval, bins=1000) 
xlim([-6, 6]) 
ylim([-4.5, 4.5]) 

enter image description here

が、私のデータの範囲の境界で醜い垂直線を残し:imshowを使用して

私の最初の試みはここで見ることができます。次のように

私の質問は以下のとおりです。

  1. はない場合imshowコール
  2. を回避しながら、ゼロ値の青と数字を記入する方法はあります、どのように私は、垂直線を非表示にすることができます?
+0

ホワイトエリアデータは、基本的にヌルではないので、私は最善の解決策は、あなたがプロットされているデータを拡張することだと思う0、意図的ではありません。 – sashkello

+0

@sashkello、はい、私は白い領域がnullであることを理解します。したがって、私の質問です。私はそれを変性させることなくデータをどのように伸ばすことができるかわかりません。私の質問は*です、「どのように私はそれを拡張するのですか? – blz

+0

視覚化の問題であれば、それほど問題になることはありません。プロット用に一時的に変更されたデータセットがあります。 – sashkello

答えて

6

わかりました。それは実際にはむしろ単純です:ただ一つはrange kwargを操作する必要があります。

figure() 
#imshow(np.array([[0] * 8] * 12), extent=[-6, 6, -4.5, 4.5]) 
hist2d(xval, yval, bins=1000, range=np.array([(-6, 6), (-4.5, 4.5)])) 
xlim([-6, 6]) 
ylim([-4.5, 4.5]) 

enter image description here

関連する問題