2016-06-01 10 views
3

等高線プロットに含まれる特定のデータセットを視覚化するときに問題があります。問題は、Z値の範囲が約2から0までのデータポイント(X、Y、Z)の束があることです。興味深い機能の多くは0から0.3の範囲にあります。通常のスケーリングを使用して、この画像に示されるように、彼らは、参照するのが非常に困難である:今Python Matplotlib等高線プロットの非線形スケーリング

http://i.stack.imgur.com/7O8hH.png

、私はどうする他に何について考えています。もちろん、対数スケーリングがありますが、最初に何らかのマッピングについて考えなければなりません。それをどうやって行うのか100%確信していません。 this questionに触発されて、その質問で合理的にうまく機能したタイプscaling(x) = Log(x/min)/Log(max/min)のマッピングを考えることができました。

また、興味深いのは、discussed hereでした。

ArcSinhスケーリング機能を使用していました。それは小さなフィーチャを全体に比例して非常によく拡大するように見えました。

私の質問は私が推測するように2倍です。

  1. はどのようにして小振幅の特徴は外れ値によって吹き飛ばさ取得しないように私の等高線プロットでデータをスケーリングでしょうか?

  2. 上記の方法のいずれかを使用するか、全く異なるものを使用しますか?

は、私は、Pythonにかなり新しいですし、私は常にそこに既にあるすべてのものに驚いていますので、私は、私は上記のものよりも優れている方法で構築さがあるかもしれないと確信しています。私はdatafile hereをアップロード完全性については

(アップロードサイトはrobustfiles.com、迅速なGoogle検索は、私に言っているが、これらのようなものを共有するための信頼できるウェブサイトです)

私は

data = np.load("D:\SavedData\ThreeQubitRess44SpecHighResNormalFreqs.npy") 

fig, (ax1) = plt.subplots(1,figsize=(16,16))  
cs = ax1.contourf(X, Y, data, 210, alpha=1,cmap='jet') 
fig.colorbar(cs, ax=ax1, shrink=0.9) 
ax1.set_title("Freq vs B") 
ax1.set_ylabel('Frequency (GHz)'); ax1.set_xlabel('B (arb.)') 
で上記のプロット
+0

を壊すことにより、2つの別々の領域にプロットを破るためにある、あなたは、例えば6.2 GHzおよび-0.6 B.周りのいくつかの機能をこれは私がしたいのですが何かされて見ることができますより明示的にする。 – user129412

答えて

2

優秀な質問です。

データの縮尺を変更しないでください。多くのスケーリング機能を持つ範囲での妥協を探しています。

代わりにcustom colormapを使用してください。これにより、実際のデータを再マップする必要がなくなり、強調表示したい領域の視覚化を簡単にカスタマイズできます。 Another exampleはscipy cookbookにありますが、インターネットではかなりの数があります。

+0

それは素晴らしい洞察です!私はドキュメンテーションを見て回り、それを試してみよう。それでも、スケーリングの問題をカラーマップに移すだけではないことは、私にはっきりと分かりません。最初のことは、もちろん、コントラストのある色を選ぶことです(それも些細なことではありません)。しかし、私は、トランジションが関心のある詳細が目に見えるようになっていることを確認する必要があります。0から1の範囲で青から赤に変わったとしますが、私の詳細のほとんどは0から0.2の範囲です。それでは、私はまだカラーマップに特別なスケールが必要でしょうか? – user129412

+1

@ user129412私はスケーリングの問題をカラーマップに移さないかどうかの問題を理解しています。しかし、カラーマップは完全に任意にすることができます。データのスケーリング関数でそれを行うには、区分的な連続関数を探します。カラーマップを変更することで、はるかに迅速に処理できます。選択については、実際には境界線(1:赤、0.2:青、次にグレースケールなど)で不連続にするか、cmapを単に伸ばすことができます:[0、.2]とオレンジ(.2、1)のための赤に。 –

+0

はい、それは理にかなっています。私が考えるカラーマップには十分な文書がありますので、私はそれを理解することができます。 – user129412

1

別のオプションは、コメントとして軸like so

関連する問題