[解決済み] plot.new() のエラー : R では図の余白が大きすぎます。
質問
私はRの初心者ですが、小さなデータセットで多数の相関プロットを作りました。しかし、大きなデータセット(2gb以上)をプロットしようとすると、プロットはうまく作れますが、凡例が表示されません。何かアドバイスや代替案はありますか?
library(gplots)
r.cor <- cor(r)
layout(matrix(c(1,1,1,1,1,1,1,1,2,2), 5, 2, byrow = TRUE))
par(oma=c(5,7,1,1))
cx <- rev(colorpanel(25,"yellow","black","blue"))
leg <- seq(min(r.cor,na.rm=T),max(r.cor,na.rm=T),length=10)
image(r.cor,main="Correlation plot Normal/Tumor data",axes=F,col=cx)
axis(1, at=seq(0,1,length=ncol(r.cor)), labels=dimnames(r.cor)[[2]],
cex.axis=0.9,las=2)
axis(2,at=seq(0,1,length=ncol(r.cor)), labels=dimnames(r.cor)[[2]],
cex.axis=0.9,las=2)
image(as.matrix(leg),col=cx,axes=T)
のエラー
plot.new()
: 図の余白が大きすぎます
tmp <- round(leg,2)
axis(1,at=seq(0,1,length=length(leg)), labels=tmp,cex.axis=1)
どのように解決するのですか?
問題は、あなたが作成した小さな図形領域2が
layout()
によって作成された小さな図領域 2 は、プロットはおろか、デフォルトのマージンだけを含むには十分に大きくないということです。
より一般的には、デバイス上のプロット領域のサイズが、実際にプロットを行うのに十分大きくない場合にこのエラーが発生します。OPのケースの場合、問題はすべてのサブプロットとそのマージンを含むにはプロッティングデバイスが小さすぎることでした。 と は描画するのに十分な大きさのプロット領域を残しています。
RStudio ユーザーは、プロットタブが小さすぎて、マージンやプロット領域などを含むのに十分なスペースを残していない場合、このエラーが発生することがあります。これは、そのペインの物理的なサイズがグラフィックデバイスのサイズであるためです。これらは独立した問題ではなく、RStudio の plot pane は単なるプロットデバイスで
png()
,
pdf()
,
windows()
そして
X11()
.
解決方法は以下の通りです。
-
これは、特に、OP の場合のように、同じデバイス上で複数のプロットを描こうとしている場合に役立つかもしれません。
-
デバイスの物理的な寸法を大きくする。
png()
,pdf()
など)、またはデバイスを含むウィンドウ/ペインのサイズを変更することで、デバイスを表示することができます。 -
余白のサイズなどを制御できるように、プロット上のテキストのサイズを縮小する。
余白のサイズを小さくする
問題が発生している行の前に、試してみてください。
par(mar = rep(2, 4))
次に、2番目の画像をプロットします。
image(as.matrix(leg),col=cx,axes=T)
の余白の大きさを調整する必要があります。
par()
を呼び出す必要があります。
サイズを大きくする
プロットする実際のデバイスのサイズを大きくする必要があるかもしれません。
最後のヒントとして
par()
のデフォルトを保存してから変更することです。
par()
の呼び出しを変更します。
op <- par(oma=c(5,7,1,1))
で、プロット終了時に
par(op)
関連
-
ggplot2 からグリッドと背景色を削除する。
-
Rのexpand.grid()コマンド
-
[解決済み] データフレーム列の名前によるドロップ
-
[解決済み] Rで2つのグラフを同じプロットで表示する
-
[解決済み] 関数のソースコードを見るにはどうしたらいいですか?
-
[解決済み] 空のdata.frameを作成する
-
[解決済み] Rでロードされているパッケージのバージョンを調べるには?
-
[解決済み] R および RStudio のコンソールをクリアする関数
-
[解決済み】私のggplot2構文が賢明であるときに、R CMDチェック「no visible binding for global variable」注記を処理するにはどうすればよいですか?
-
[解決済み] ggplot2 で個々のファセットにテキストをアノテートする
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
二項演算子への非数値引数を報告するR言語エラー
-
SocketTimeoutExceptionです。読み込みがタイムアウトしました
-
R - ユークリッド距離の計算を簡単にする方法
-
[解決済み] lm.fit(x,y,offset = offset, singular.ok,...) 0 非NAケースでboxcox式で計算するとエラーになる。
-
[解決済み] Rの代入演算子"="と"<-"の違いは何ですか?
-
[解決済み] リストやデータフレームの要素にアクセスするためのブラケット[ ]とダブルブラケット[[ ]]の違いについて
-
[解決済み] 統計的最頻値の求め方は?
-
[解決済み] 不足しているパッケージをチェックし、インストールするためのエレガントな方法?
-
[解決済み] データフレーム内のランダムな行をサンプリングする
-
[解決済み】エラー:Rで関数が見つかりませんでした。