2016-09-02 5 views
1

Rマトリックスの異常値を別の色で表示する。 は、私は今、私は別の色で500をマークしたいとヒートマップのデフォルト色を持つ行列の残りRヒートマップの異常値を別の色で表示する

1 2 4 2 5 
5 4 3 2 3 
1 500 5 4 2 

などのデータを持っていると言います。

誰かがプロセスをガイドできますか?

+2

この質問はかなり広いです。コードやデータはありません。これを追加して、例えばあなたが使っているグラフシステムを見てください。 – lmo

+0

dfは私のデータセットです。ここでは、以下の関数を使ってプロットしていますが、1 2 3などの色勾配の違いは区別できません。だから、私はこの500をいくつかの異なる色にしたい。緑色で、残りの色は他の色調にすることができる。 ヒートマップ(as.matrix(sapply(DF、as.numeric)) 、スケール= "列" 、COL = heat.colors(256) 、主= "何とか何とか" 、Rowv = NA 、Colv = NA ) –

+0

コメントにコードを追加するのではなく、質問を編集してください。 – lmo

答えて

1

500を明確に見たい場合は、スケーリングを指定しないでください。たとえば、

m <- matrix(c(1, 5, 1, 2, 4, 500, 4, 3, 5, 2, 2, 4, 5, 3, 2), 
    ncol=5) 

heatmap((m<500)+0, scale="none", Rowv=NA, Colv=NA) 
+0

助けていただきありがとうございます。しかし、私が望むのは、500が異なる勾配(緑色かもしれません)と他の何かの数字の残り(オレンジ色かもしれません)です。 また、私はラベルが来るようにしたい。あなたは助けることができます –

+0

私は2つの色を与えるために私の答えを編集しました。 –

1

これを実現するための適切な回避策があります。 をgplotsから使用すると、ヒートマップのNA値に任意の色を指定できます。したがって、単純な関数を使用して外れ値をソースマトリックス内のNAsに置き換えると、好きな色でそれらを表現できます。

まず、異常値の条件を選択します。たとえば、10より大きい値が異常値であるとしましょう。

> m 
#  [,1] [,2] [,3] [,4] [,5] 
# [1,] 1 2 4 2 5 
# [2,] 5 4 3 2 3 
# [3,] 1 500 5 4 2 

m[m > 10] <- NA 

ヒートマップをプロットします。

library(plots) 
heatmap.2(m, trace = "none", na.color = "Green") 

enter image description here

外れ値は今素晴らしく、明らかです。

関連する問題