R の箱ひげ図に透明な長方形を追加する
この記事では、R の箱ひげ図に透明な長方形を追加する方法に関する複数の方法を示します。
rect
関数を使用して、R の箱ひげ図に透明な長方形を追加する
透明な長方形は、boxplot
関数を使用して作成された既存のグラフへのオーバーレイとして描画できます。長方形を描画するために、プロット関数の後に rect
関数が呼び出されます。rect
を使用して、指定された座標で一連の長方形を描画することもできることに注意してください。この場合、背景としてオーバーレイする箱ひげ図に 1つの長方形のみを追加します。rect
関数は、長方形の領域を指定する最初の 4つの引数として位置を取ります。これらの 4つの引数は、スカラー値またはスカラーのベクトルとして渡すことができます。次の例では、mtcars
データセットとその 2つの数値列を使用してスケールで描画します。値は数値であるため、max
関数を使用していくつかの位置を指定できます。rect
関数は、長方形を塗りつぶすためのパラメータとして色を使用することもできます。今回は、rgb
関数を使用して、色の値とその不透明度を表す alpha
パラメーターを渡します。
boxplot(hp ~ mpg, data = mtcars,
xlab = "Miles/(US) gallon", ylab = "Gross Horsepower",
col = "orange")
rect(-1, -1, max(mtcars$hp + 100), max(mtcars$hp) + 100,
col= rgb(red = 0.95, green = 0.8, blue = 0.3, alpha = 0.2))
ggplot
で annotate
関数を使用して、R の箱ひげ図に透明な長方形を追加する
プロットが ggplot
ライブラリを使用して構築されている場合、annotate
関数を使用して透明な長方形を追加できます。次のコードスニペットは、x 軸に文字値を含む箱ひげ図を表示します。annotate
関数は、注釈レイヤーの長方形の形状を指定する最初の引数として rect
文字列を取ります。次の 4つの引数は、形状の位置の値を指定します。x 軸に数値以外の値がある場合でも、関数はそれらの位置を列挙し、ユーザーが渡した位置番号に合わせることができます。
library(ggplot2)
library(dplyr)
p1 <- ggplot(InsectSprays, aes(x = spray, y = count)) +
geom_boxplot(fill = "pink") +
scale_x_discrete(name = "Number of babies") +
ggtitle("Title of the Plot") +
annotate("rect", xmin = 1, xmax = 3, ymin = 0, ymax = max(InsectSprays$count),
alpha = .2, fill = "orange")
p1
または、注釈
関数を使用して折れ線グラフに長方形を描画し、プロットの特定の範囲を強調表示することもできます。スケールに数値がある場合、*min
/*max
引数はそれらの範囲から正確な値をとることができることに注意してください。
library(ggplot2)
library(babynames)
library(dplyr)
dat <- babynames %>%
filter(name %in% c("Alice", "Maude", "Mae")) %>%
filter(sex=="F")
p1 <- ggplot(dat, aes(x = year, y = n, color = name)) +
geom_line() +
scale_y_continuous(
breaks = seq(0, 15000, 1000),
name = "Number of babies") +
ggtitle("Name Popularity Through Years") +
annotate("rect", xmin = 1960, xmax = 2000, ymin = -1, ymax = max(dat$n),
alpha = .2, fill = "orange")
p1