Analysis in R: Focus on a specific group! The “ggfocus” package

RAnalytics
スポンサーリンク

This is an introduction to the “ggplot2” package, which allows you to easily create graphs that focus on specific groups. For example, you can create a scatterplot that shows a particular group in color and other groups in black and white. It is a useful package.

Package version is 1.0.0. Checked with R version 4.2.2.

スポンサーリンク

Install Package

Run the following command.

#Install Package
install.packages("ggfocus")

Example

See the command and package help for details.

#Loading the library
library("ggfocus")

###Create Data#####
#Install the tidyverse package if it is not already there
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))

#Create base ggplot
#Scatter plot
Point_Plot <- ggplot(TestData, aes(x = X_num_Data, y = Y_num_Data)) +
  geom_point()
#Bar chart
Column_Plot <- ggplot(TestData, aes(x = X_num_Data, y = Y_num_Data,
                                    fill = Group)) +
  geom_col()
#Line plot
Line_Plot <- ggplot(TestData, aes(x = 1:50, y = Y_num_Data,
                                  group = Group, linetype = Group)) +
  geom_line() 
########

#Attention in scatter plot: scale_color_focus command
#Specify target: focus_levels option; specified by string
#Specify color: color_focus option
Point_Plot + aes(colour = Group, size = 5) + 
  scale_color_focus(focus_levels = c("Group2", "Group4"),
                    color_focus = c("red", "blue")) +
  guides(size = "none")

#Attention in bar chart: scale_fill_focus command
#Specify target: focus_levels option; specified by string
#Specify color: color_focus
Column_Plot +
  scale_fill_focus(focus_levels = c("Group2", "Group4"),
                   color_focus = c("red", "blue"))

#Attention in line plot: scale_linetype_focus command
#Point to specify group, linetype for aes in the model
#Specify target:focus_levels option; specified by string
#Specify target linetype: linetype_focus option
#Specify other linetypes: linetype_other option
Line_Plot +
  scale_linetype_focus(focus_levels = c("Group2", "Group4"),
                       linetype_focus = c(5, 1),
                       linetype_other = 3)

#Focus on symbol type and size: scale_shape_focus command &
#scale_size_focus command
##scale_shape_focus command
#Specify target symbols:shape_focus option
#Specify symbols not in focus: shape_other option
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 command
#Specify target symbol size: size_focus option
#Specify symbol size outside of target: size_other option
  scale_size_focus(focus_levels = c("Group2", "Group4"),
                   size_focus = 7, size_other = 3)

Output Example

・scale_color_focus command

・scale_fill_focus command

・scale_linetype_focus command

・scale_shape_focus command & scale_size_focus command


I hope this makes your analysis a little easier !!

Amazon audibleの登録の紹介

プライム会員限定で2024年7月22日まで3か月無料体験キャンペーン開催中です。無料体験後は月額1,500円で聞き放題です。なお、聞き放題対象外の本はAudible会員であれば非会員価格の30%引きで購入することが可能です。

Amazon audibleはプロのナレーターが朗読した本をアプリで聞くことができるサービスで、オフライン再生も可能です。通勤や作業のお供にAmazon audibleのご登録はいかがでしょうか。

・AmazonのAudible

https://amzn.to/3L4FI5o

Copied title and URL