今朝私はここにあるペアワイズ値の表からヒートマップを作成するソリューションを見つけました。私は格子パッケージがlevelplots
を提供していることがわかりました。データを適切なフォーマットに変換すると、levelplot
で再生しました。デフォルトのカラーテーマは、私が何をしたのかを生み出すものではなく、ウェブ上にグレースケールのソリューションを見つけました。しかし、プロットの多くを制御することは、今のところ私の範囲外です。私は非常に頻繁にRを使いませんが、深いデータ構造の多くにはあまりよく知られていません。ラティスとレベルプロットを使用してヒートマップを制御するにはどうすればよいですか?
私の現在のコマンドは次のとおりです。
library("lattice")
matrix <- as.matrix(rev(read.table("inputfile",header=T,row.names=c(<list of ten names>))))
levelplot(matrix,col.regions = grey(100:0/100))
これはdput行列の出力です:
structure(c("937.5", "652.5", "1066.5", "787.5", "229.5", "115.5", "787.5", "763.5", "415.5", "N/A", "1483.5", "1360.5", "1858.5", "1309.5", "478.5", "322.5", "1375.5", "1588.5", "N/A", "1759.5", "643.5", "904.5", "1189.5", "712.5", "256.5", "154.5", "829.5", "N/A", "403.5", "1231.5", "808.5", "1096.5", "1195.5", "913.5", "292.5", "187.5", "N/A", "1147.5", "478.5", "1192.5", "6712.5", "6373.5", "6517.5", "6058.5", "4555.5", "N/A", "6394.5", "7357.5", "6214.5", "6835.5", "3412.5", "3991.5", "3814.5", "3793.5", "N/A", "1327.5", "3994.5", "3808.5", "3307.5", "4618.5", "1261.5", "1261.5", "1162.5", "N/A", "310.5", "220.5", "1195.5", "1639.5", "574.5", "1732.5", "871.5", "847.5", "N/A", "610.5", "262.5", "172.5", "943.5", "985.5", "448.5", "1525.5", "940.5", "N/A", "1105.5", "829.5", "292.5", "160.5", "961.5", "1198.5", "538.5", "1495.5", "N/A", "832.5", "1009.5", "880.5", "280.5", "196.5", "952.5", "1357.5", "550.5", "1456.5"), .Dim = c(10L, 10L), .Dimnames = list( c("NA_Pacific", "NA_Central", "NA_Atlantic", "Greenland", "EU_NW", "EU_WM", "EU_BS.EM", "Asia_SW", "Asia_Central", "Asia_East"), c("Asia_East", "Asia_Central", "Asia_SW", "EU_BS.EM", "EU_WM", "EU_NW", "Greenland", "NA_Atlantic", "NA_Central", "NA_Pacific")))
これは私が 達成したいほとんど何作成されます。しかしグレーは 醜いです。たとえば、 を青色に変更するにはどうすればよいですか?さらに...
動作しない青 グレー代入すると、それは私が私の 入力テーブルに指定されているよう 目盛りにラベルを印刷します。これはy軸の では有効ですが、x軸では機能しません。どうすれば をx軸ティック( 90度回転)にプリントするためにy軸ダニをリサイクルできますか?
最後に、 (上と下)には、わずかな ビットの空白があります。これは実際には の問題ではありませんが、それを除去するにはちょうどいい でしょう。
質問の少なくとも一部が解決されることを願っています。前もって感謝します。 matrix
オブジェクトが文字行列であると私はlevelplotが数値1とのより良い動作することを期待していたので、私が作ったその瞬間に
'matrix'オブジェクトにdputまたはstrのいずれかを持たせることは本当に役立ちます。 –