pkgdown は、パッケージの Web サイトを簡単に構築するための R パッケージです。 しかし、CRAN にある現在のバージョン 1.6.1 は、例題に RGL を使用しているパッケージや、 leaflet のように htmlwidgets を使用しているパッケージに対しては、あまりうまく動作しません。 htmlwidgets のようなパッケージではうまく動作しません。 このドキュメントでは、これら両方のサポートに関する現在の進捗状況を説明します。
pkgdown をサポートする上での主な問題点は、 RGL やその他の htmlwidgets のユーザは、各 Web ページに複数の Javascript ライブラリをリンクする必要があります。 pkgdown
1.6.1 ではこれができませんが、Github にある現在の開発版では、追加の依存ライブラリのサポートが追加されています。 これには、downlit の変更や、他のウィジェットについては htmlwidgets の変更 も必要です。
変更点のインストールはとても簡単です。 remotes パッケージがインストールされていることを確認し、以下を実行してください。
remotes::install_github(c("r-lib/downlit",
"r-lib/pkgdown",
"dmurdoch/rgl",
"dmurdoch/htmlwidgets@rglpatch"))
これらの開発版パッケージがインストールされていると、サンプルの中に RGL や leaflet
の出力が自動的に現れるようになります。 RGL の出力は、knitr
ドキュメントでの
つまり、出力されたRGLコマンドが自動的に表示に含まれるようになります。 低レベルの変更は1つの表示にまとめられます。:
## null
## 4
x <- rnorm(100)
y <- rnorm(100)
z <- 0.2*x - 0.3*y + rnorm(100, sd = 0.3)
fit <- lm(z ~ x + y)
plot3d(x, y, z, type = "s", col = "red", size = 1)
# No plot here, because of the planes3d() call below
coefs <- coef(fit)
a <- coefs["x"]
b <- coefs["y"]
c <- -1
d <- coefs["(Intercept)"]
planes3d(a, b, c, d, alpha = 0.5)
デフォルトでは、pkgdown は幅が高さよりも大きい標準的なプロットを生成します(黄金比に従っています)。 RGL のプロットは、ユーザーがコンテンツを回転させる可能性があるため、幅と高さが等しい方が見栄えが良い場合が多いです。
pkgdown でプロットのサイズを指定するには、_pkgdown.yml
の figures
項目を使用します。 デフォルトでは以下のようになっています。:
figures:
dev: ragg::agg_png
dpi: 96
dev.args: []
fig.ext: png
fig.width: 7
fig.height: ~
fig.retina: 2
fig.asp: 1.618
bg: NA
other.parameters: []
デフォルトでは RGL はこれらのパラメータを使用しますが、other.parameters
に rgl
エントリを指定することで、fig.width
, fig.height
, fig.asp
のいずれかをオーバーライドすることができます。 例えば、以下のようになります。:
figures:
fig.width: 5
other.parameters:
rgl:
fig.asp: 1
これにより、すべてのプロットの幅が5インチになり、RGLのプロットが正方形になります。
これらは開発版のパッケージなので、私の変更点や他の未発表の変更点などのバグが含まれている可能性があります。 通常のプロダクションコードに使用することはお勧めしません。 リリースされたバージョンのパッケージを再インストールするには、以下を実行してください。
使ってみて、もしバグに気づいたら、ぜひ バグを報告 してください。