Rで解析:ブラウザでプロットを管理「httpgd」パッケージ


ブラウザやRStudioのViewerでプロットを管理できるパッケージの紹介です。管理できる操作はプロットをpngやsvgなどの形式で保存、プロットの拡大などです。

プロットを一括管理できるので使用してみてはいかがでしょうか。

パッケージのバージョンは1.3.0。実行コマンドはwindows 11のR version 4.1.2で確認しています。

パッケージのインストール

下記コマンドを実行してください。インストール時にコンパイル作業で時間がかかるかもしれません。

#パッケージのインストール
install.packages("httpgd")

実行コマンド

詳細はコメント、パッケージヘルプを確認してください。

#パッケージの読み込み
library("httpgd")

#プロットをブラウザで表示する準備:hgdコマンド
#システム標準ブラウザと連携します
#このコマンド以降に実行されるプロットが表示されます
hgd()

#プロットを標準ブラウザで表示:hgd_browseコマンド
hgd_browse()

#プロットをRStudioで表示:hgd_viewコマンド
hgd_view()

#システム標準ブラウザと連携を解除:hgd_closeコマンド
hgd_close()

#httpgd_graphics_device情報を表示:hgd_infoコマンド
hgd_info(which = dev.cur())

#################################
###使用例:標準ブラウザで表示#####
#################################
hgd()

###データ例の作成#####
#tidyverseパッケージがなければインストール
if(!require("tidyverse", quietly = TRUE)){
  install.packages("tidyverse");require("tidyverse")
}
set.seed(1234)
n <- 300
TestData <- tibble(Group = sample(paste0("Group", 1:4), n,
                                  replace = TRUE),
                   X_num_Data = sample(c(1:50), n, replace = TRUE),
                   Y_num_Data = sample(c(51:100), n, replace = TRUE),
                   Chr_Data = sample(c("か", "ら", "だ", "に",
                                       "い", "い", "も", "の"),
                                     n, replace = TRUE),
                   Fct_Data = factor(sample(c("か", "ら", "だ", "に",
                                              "い", "い", "も", "の"),
                                            n, replace = TRUE)))
#######

#GGallyパッケージ
#https://www.karada-good.net/analyticsr/r-17/
#GGallyパッケージがなければインストール
if(!require("GGally", quietly = TRUE)){
  install.packages("GGally");require("GGally")
}
#データの特徴を一気にプロット:ggpairsコマンド
ggpairs(data = TestData, columns = c(1, 5, 2, 3),
        mapping = aes(color = Group),
        upper = list(continuous = "smooth"),
        lower = list(combo = "facetdensity"),
        diag = list(continuous = "barDiag"),
        cardinality_threshold = 30)

#複数のグラフをプロット:ggmatrixコマンド
PlotList <- list()
list(for (i in 1:3) {
  #箱ひげ図
  PlotList[[i]] <- qplot(data = TestData, x = Group,
                         y = X_num_Data, fill = Group, geom = "boxplot")
  #散布図
  PlotList[[i + 3]] <- qplot(data = TestData, x = Y_num_Data,
                             y = X_num_Data, color = Group, geom = "point") +
    ggtitle("TEST")
})

#プロット
ggmatrix(PlotList, nrow = 2, ncol = 3,
         xAxisLabels = 1:3, yAxisLabels = 1:2, title = "TEST")

#ggplot2パッケージ
#https://www.karada-good.net/analyticsr/r-657/
#基本となるggplot2のデータ作成
One_Cotinuous <- ggplot(TestData, aes(x = X_num_Data,
                                      color = Group,
                                      fill = Group))

#geom_areaコマンド
One_Cotinuous +
  geom_area(stat = "count", alpha = 0.7) +
  scale_fill_manual(values = c("#a87963", "#505457",
                               "#4b61ba", "#A9A9A9")) +
  labs(title = "geom_area")

#geom_densityコマンド
One_Cotinuous +
  geom_density(alpha = 0.7) +
  scale_fill_manual(values = c("#a87963", "#505457",
                               "#4b61ba", "#A9A9A9")) +
  labs(title = "geom_density")

#プロットを標準ブラウザで表示:hgd_browseコマンド
hgd_browse()
########

出力例


少しでも、あなたの解析が楽になりますように!!

スポンサードリンク

スポンサードリンク