WordやPowerPointで編集可能なグラフを出力できるパッケージの紹介です。棒グラフ、折れ線グラフ、散布図、面グラフの作成が可能です。グラフ内での日本語も文字化けせずに利用可能です。
パッケージバージョンは0.3.1。WordやPowerPointはOffice365。実行コマンドはwindows 11のR version 4.1.2で確認しています。
パッケージのインストール
下記コマンドを実行してください。
#パッケージのインストール install.packages("mschart")
実行コマンド
詳細はコマンド、パッケージのヘルプを確認してください。
#パッケージの読み込み library("mschart") ###データ例の作成##### n <- 30 TestData <- data.frame("ID" = rep(c("KA", "RA", "DA"), each = 3, length = n), "Group" = rep_len(c("Group1", "Group2", "Group3"), n), "Point" = rep(1:10, length = n), "Value" = rnorm(n)) ######## #作成可能な4種のグラフ:ms_XXXXコマンド #作成したグラフはprintコマンド,preview = TRUEで表示可能 #Group分割:groupオプション:NULLで分割なし #棒グラフ:ms_barchartコマンド TestBar <- ms_barchart(data = TestData, x = "ID", y = "Value", group = "Group") print(TestBar, preview = TRUE) #NoGTestBar <- ms_barchart(data = TestData, x = "ID", y = "Value", group = NULL) #print(NoGTestBar, preview = TRUE) #折れ線グラフ:ms_linechartコマンド TestLine <- ms_linechart(data = TestData, x = "Point", y = "Value", group = "Group") print(TestLine, preview = TRUE) #散布図:ms_scatterchartコマンド TestScatter <- ms_scatterchart(data = TestData, x = "Point", y = "Value", group = "Group") print(TestScatter, preview = TRUE) #面グラフ:ms_areachartコマンド TestAreachart <- ms_areachart(data = TestData, x = "Point", y = "Value", group = "Group") print(TestAreachart, preview = TRUE) #グラフの種類を設定:chart_settingsコマンド #種類を設定:groupingオプション;stacked:積み上げ,percentStacked:100%積み上げ, #clustered:集合;棒グラフと散布図,standard:標準が指定可能 #グラフの重なりを調整:overlapコマンド;-100から100で指定可能 SetTestBar1 <- chart_settings(TestBar, grouping = "stacked", overlap = 50) print(SetTestBar1, preview = TRUE) #X,Y軸の書式設定:chart_ax_x,chart_ax_yコマンド #両コマンドオプションが共通 #ラベルの位置を指定:crossesオプション;min,max,autoZeroが指定可能 #目盛,補助目盛の位置を指定:major_tick_mark,minor_tick_markオプション #cross,in,none,outが指定可能 #ラベルの回転:rotationオプション;-360から360で指定可能 #数値書式設定:num_fmtオプション SetTestBar2 <- chart_ax_x(SetTestBar1, crosses = "min", minor_tick_mark = "cross", rotation = -45) SetTestBar3 <- chart_ax_y(SetTestBar2, crosses = "min", minor_tick_mark = "cross", num_fmt = "0.0", rotation = -45) print(SetTestBar3, preview = TRUE) #グラフ,X,Y軸のタイトルを設定:chart_labelsコマンド #日本語利用もOK SetTestBar3$theme$main_title$font.family <- "MS UI Gothic" SetTestBar3$theme$axis_title_x$font.family <- "MS UI Gothic" SetTestBar3$theme$axis_title_y$font.family <- "MS UI Gothic" SetTestBar4 <- chart_labels(SetTestBar3, title = "Title", xlab = "x title", ylab = "y title") print(SetTestBar4, preview = TRUE) #塗り色を指定:chart_data_fillコマンド #色を設定:valueオプション;単色またはラベル名で指定 SetTestBar5 <- chart_data_fill(SetTestBar4, values = c(Group1 = "#FDE4C0", Group2 = "#FFF7F3", Group3 = "red")) print(SetTestBar5, preview = TRUE) #枠線色を指定:chart_data_strokeコマンド #オプションはchart_data_fillコマンドと共通 SetTestBar6 <- chart_data_stroke(SetTestBar5, values = "yellow") print(SetTestBar6, preview = TRUE) #参考:WordまたはPowerPointに埋め込み保存する方法 #install.packages("officer") library("officer") #Word:body_add_chartコマンド doc <- read_docx() doc <- body_add_chart(doc, chart = SetTestBar6, style = "centered") print(doc, target = "Test.docx") #PowerPoint:ph_with_chartコマンド doc <- read_pptx() doc <- add_slide(doc, layout = "Title and Content", master = "Office Theme") doc <- ph_with_chart(doc, chart = SetTestBar6) print(doc, target = "Test.pptx")
出力例
・グラフを作成:ms_XXXXコマンド
・ms_barchartコマンドに全体裁コマンドを適応
『SetTestBar6』を出力
・参考:Wordへ出力後に編集
少しでも、あなたの解析が楽になりますように!!