35

ggplotグラフィックを使用してRの関数内からいくつかのグラフィックウィンドウを生成したい...

testf <- function(a, b) {
  devAskNewPage(TRUE)
  qplot(a, b);
  # grid.newpage(recording = TRUE)
  dev.new()
  qplot(a, a+a);
  # grid.newpage(recording = TRUE)
  dev.new()
  qplot(b, b+b);
}

library(ggplot2)

x <- rnorm(50)
y <- rnorm(50)
testf(x, y)

ただし、dev.new()もgrid.newpage()も前のプロットをフラッシュしていないようです。

Rでは、関数は通常、評価する最後のものしか生成しないことを知っていますが、プロセスをよりよく理解し、考えられる回避策について学びたいと思います。

考え?

4

1 に答える 1

34

ラティスとggplot2のグリッドベースのグラフィック関数はグラフオブジェクトを作成しますが、表示しません。グラフオブジェクトのprint()メソッドは、実際の表示を生成します。

print(qplot(x, y))

問題を解決します。

RFAQ7.22を参照してください。

于 2010-03-30T19:05:54.653 に答える