「ggplot2」パッケージで特定のグループに注目した図を簡単に作成できるパッケージの紹介です。例えば散布図で特定グループをカラーで、他グループを白黒表示するなどです。便利なパッケージだと思います。
パッケージバージョンは1.0.0。実行コマンドはR version 4.2.2で確認しています。
パッケージのインストール
下記、コマンドを実行してください。
#パッケージのインストール install.packages("ggfocus")
実行コマンド
詳細はコメント、パッケージのヘルプを確認してください。
#パッケージの読み込み library("ggfocus") ###データ例の作成##### #tidyverseパッケージがなければインストール if(!require("tidyverse", quietly = TRUE)){ install.packages("tidyverse");require("tidyverse") } set.seed(1234) n <- 50 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)) #ggplotひな形を作成 #散布図 Point_Plot <- ggplot(TestData, aes(x = X_num_Data, y = Y_num_Data)) + geom_point() #棒グラフ Column_Plot <- ggplot(TestData, aes(x = X_num_Data, y = Y_num_Data, fill = Group)) + geom_col() #折れ線グラフ Line_Plot <- ggplot(TestData, aes(x = 1:50, y = Y_num_Data, group = Group, linetype = Group)) + geom_line() ######## #散布図で注目:scale_color_focusコマンド #対象を指定:focus_levelsオプション;文字列で指定 #色を指定:color_focusオプション Point_Plot + aes(colour = Group, size = 5) + scale_color_focus(focus_levels = c("Group2", "Group4"), color_focus = c("red", "blue")) + guides(size = "none") #棒グラフで注目:scale_fill_focusコマンド #対象を指定:focus_levelsオプション;文字列で指定 #色を指定:color_focus Column_Plot + scale_fill_focus(focus_levels = c("Group2", "Group4"), color_focus = c("red", "blue")) #折れ線グラフで注目:scale_linetype_focusコマンド #ひな形のaesにgroup,linetypeを指定するのがポイント #対象を指定:focus_levelsオプション;文字列で指定 #対象の線種を指定:linetype_focusオプション #対象外の線種を指定:linetype_otherオプション Line_Plot + scale_linetype_focus(focus_levels = c("Group2", "Group4"), linetype_focus = c(5, 1), linetype_other = 3) #シンボルの種類と大きさで注目:scale_shape_focusコマンド&scale_size_focusコマンド ##scale_shape_focusコマンド #対象のシンボルを指定:shape_focusオプション #対象外のシンボルを指定:shape_otherオプション Point_Plot + aes(size = Group, shape = Group) + scale_shape_focus(focus_levels = c("Group2", "Group4"), shape_focus = c(18, 21), shape_other = 1) + ##scale_size_focusコマンド #対象のシンボルサイズを指定:size_focusオプション #対象外のシンボルサイズを指定:size_otherオプション scale_size_focus(focus_levels = c("Group2", "Group4"), size_focus = 7, size_other = 3)
出力例
・scale_color_focusコマンド
・scale_fill_focusコマンド
・scale_linetype_focusコマンド
・scale_shape_focusコマンド&scale_size_focusコマンド
少しでも、あなたの解析が楽になりますように!!