6

パッケージを使用してプロットを生成しますhexbin:

ここに画像の説明を入力

# install.packages("hexbin", dependencies=T)
library(hexbin)


set.seed(1234)
x <- rnorm(1e6)
y <- rnorm(1e6)
hbin <- hexbin(
  x   = x
  , y = y
  , xbin = 50
  , xlab = expression(alpha)
  , ylab = expression(beta)
)


## Using plot method for hexbin objects:
plot(hbin, style = "nested.lattice")

abline(h=0)

これにより、S4 オブジェクト ( hbin) が生成されるようです。これを を使用してプロットしplotます。を使用してそのプロットに水平線を追加したいのですablineが、残念ながらこれによりエラーが発生します。

plot.new はまだ呼び出されていません

また、軸ラベルの位置(アルファとベータは数字の範囲内)、凡例の位置の変更などを操作する方法もわかりません。

私は OOP に精通していますが、これまでのところ、plot() がオブジェクトを処理する方法 (オブジェクトの特定のメソッドを呼び出しますか?) と、結果のプロットを操作する方法を見つけることができませんでした。

単純にプロットに線を引くことができないのはなぜですか?

軸ラベルを操作するにはどうすればよいですか?

4

3 に答える 3

2

hex bin - の格子バージョンを使用しhexbinplot()ます。でpanel線を追加でき、 でstyle六角形を視覚化するさまざまな方法を選択できます。詳細については、ヘルプを確認してくださいhexbinplot

library(hexbin)
library(lattice)
x <- rnorm(1e6)
y <- rnorm(1e6)
hexbinplot(x ~ y, aspect = 1, bins=50, 
           xlab = expression(alpha), ylab = expression(beta), 
           style = "nested.centroids",
           panel = function(...) {
             panel.hexbinplot(...)
             panel.abline(h=0)
             })

ここに画像の説明を入力

于 2013-03-20T13:01:08.857 に答える
2

hexbinではgridなく、グラフィックスを使用しbaseます。勾配と切片を指定することでプロットに線を引くことができる同様の関数 がありますが、grid.abline使用される座標系は混乱を招きます。

grid.abline(325,0)

ほぼ希望どおりになりますが、ここでの切片は目で見つけました。

次を使用すると、より多くの運が得られますggplot2

library(ggplot2)
ggplot(data,aes(x=alpha,y=beta)) + geom_hex(bins=10) + geom_hline(yintercept=0.5)

ヘクスビン

于 2013-03-19T16:49:30.410 に答える