R システムで,グラフを PDF, SVG, HTML 形式で保存(R システム,ggplot2,gridExtra,gridSVG を使用)
【関連する外部ページ】
R システムの CRAN の URL: https://cran.r-project.org/
【サイト内の関連ページ】
前準備
R システムのインストール
【関連する外部ページ】
R システムの CRAN の URL: https://cran.r-project.org/
ggplot2 のインストール
R システムで,次のコマンドを実行し,ggplot2 をインストールする.
このとき「Secure CRAN mirrors」のような,ミラーサイトの選択画面が出たときは「Japan」のものを選ぶ.
install.packages("ggplot2")
gridExtra のインストール
R システムで,次のコマンドを実行し,gridExtra をインストールする.
このとき「Secure CRAN mirrors」のような,ミラーサイトの選択画面が出たときは「Japan」のものを選ぶ.
install.packages("gridExtra")
gridSVG のインストール
R システムで,次のコマンドを実行し,gridSVG をインストールする.
このとき「Secure CRAN mirrors」のような,ミラーサイトの選択画面が出たときは「Japan」のものを選ぶ.
install.packages("gridSVG")
XML のインストール
R システムで,次のコマンドを実行し,XML をインストールする.
このとき「Secure CRAN mirrors」のような,ミラーサイトの選択画面が出たときは「Japan」のものを選ぶ.
install.packages("XML")
PDF, SVG, HTML 形式で保存
グラフからの PDF ファイル作成例
* Iris データセットの例
library(gridExtra)
library(ggplot2)
cairo_pdf(file="out%03d.pdf")
p <- ggplot(iris)
p <- p + geom_point( aes(x = iris[,1], y = iris[,2], colour = iris[,5]) ) + scale_colour_hue()
p
dev.off()
getwd()

PDF ファイルが作成される

library(gridExtra)
cairo_pdf(file="out%03d.pdf")
grid( plot( iris[,1], iris[,2], col=iris[,5] ) )
dev.off()
getwd()

PDF ファイルが作成される

グラフからの SVG ファイル作成例
* Iris データセットの例
library(gridExtra)
library(ggplot2)
svg(file="out%03d.svg")
p <- ggplot(iris)
p <- p + geom_point( aes(x = iris[,1], y = iris[,2], colour = iris[,5]) ) + scale_colour_hue()
p
dev.off()
getwd()

SVG ファイルが作成される

library(gridExtra)
svg(file="out%03d.svg")
grid( plot( iris[,1], iris[,2], col=iris[,5] ) )
dev.off()
getwd()

SVG ファイルが作成される

グラフからの HTML ファイル作成例
要点
- gridSVG を使用 ・・・ 描画されたグリッドから SVG データを生成
- saveXML を使用 ・・・ SVG データを XML 化
- d3 ・・・ 将来に備えてインポートしておく(ここでは使っていない)
前準備として, R システムで,次のコマンドを実行し,gridSVG と XML をインストールする.
このとき「Secure CRAN mirrors」のような,ミラーサイトの選択画面が出たときは「Japan」のものを選ぶ.
install.packages("gridSVG")
install.packages("XML")
* Iris データセットの例
library(gridSVG)
library(XML)
library(ggplot2)
htmlhead <-
'
<!DOCTYPE html>
<head>
<meta charset = "utf-8">
<script src = "http://d3js.org/d3.v3.js"></script>
</head>
<body>
'
htmltail <-
'
</body>
</html>
'
p <- ggplot(iris)
p <- p + geom_point( aes(x = iris[,1], y = iris[,2], colour = iris[,5]) ) + scale_colour_hue()
p
mysvg <- grid.export(NULL, addClasses=TRUE)
sink("out.html")
cat(htmlhead, saveXML(mysvg$svg), htmltail)
sink(file=NULL)
getwd()
sink で指定したファイル out.html ができるので確認する.
