2016-12-28 3 views
2

私はredditからsarcasmデータセットを使って作業しています。 2つの主な列はtextsarcasm_tagです。私は、データフレームにさらに2列、positive_scorenegative_scoreを追加しました。両方とも、それぞれ正の感情と負の感情のスコアを表します。スコアのこの分布を可視化するために、私はsarcasm_tag == Yesとテキストが非常に小さいので、この
enter image description herematplotlibで非常に高密度な散布図を視覚化するためのより良い方法

のように見える散布図を、プロットされた、それがグラフ上に多くのポイントを隠します。次のように両方のタグ用に別のプロットは、以下のとおりです。
enter image description here

enter image description here

は、両方のクラスが表示されるようにスコアを可視化する任意のより良い方法はありますか?

+1

"いいえ"の点を最初にプロットし、その後に "はい"の点を重ねることができます。あなたは伝説を捨てなければならないかもしれませんが、手動で調整することもできます。 – wim

+0

それはうまくいった。ありがとうございました。 – MrPyCharm

+2

また、より小さな値の周りに集まっているデータのスペースを取るために、対数スケールを試すこともできます。 – morsecodist

答えて

2

winソリューション(2番目のポイントなし)に加えて、ポイントのalphaで再生することができます。赤

for blue_point in blue_data: 
    plt.plot(blue_point[0], blue_point[1], 'ob', alpha=0.3) 
for red_point in red_data: 
    plt.plot(red_point[0], red_point[1], 'or', alpha=0.8) 

enter image description here

ベスト

# Sample data 
blue_data = np.random.normal(size=(3000, 2)) 
red_data = np.random.normal(size=(10, 2)) 

for blue_point in blue_data: 
    plt.plot(blue_point[0], blue_point[1], 'ob') 
for red_point in red_data: 
    plt.plot(red_point[0], red_point[1], 'or') 
ブルースのための0.3アルファ、および0.8アルファで enter image description here

!探しているものが見つかるまでアルファで遊ぶことができます。

関連する問題