ジブリ風のカラーパレット
カラーパレットは、テーマごとなどでまとめられた色の集まりです。作図する場合に、カラーパレットを指定することで様々な図に色を付けることができます。
少し前ですが、ジブリ風のカラーパレットがあることを書きのXの投稿で知りました。使ってみたかったので、こちらのカラーパレットを例にカラーパレットの使い方を紹介します。
実際に使ってみる
カラーパレットの詳細はこのカラーパレットの作者のウェブサイトにあります(https://ewenme.github.io/ghibli/ )。URLを開くと、使用できるカラーパレットの一覧があります。色の指定の方法ですが、scale_colour_ghibli_d
関数のdirection
という引数で指定できます。
library(ghibli)
library(ggplot2)
ggplot(iris, aes(Sepal.Length, Sepal.Width, color = Species)) +
geom_jitter(size = 3) +
theme_minimal() +
scale_colour_ghibli_d("KikiLight", #ここでジブリ風パレットを指定
direction = 1)
以下の魔女の宅急便モチーフを例に挙げると、今回はdiretction
に "1"を指定しているので、一番左の黒色から採用されます。今回color
で指定しているSpeciesは3水準のデータなので、一番左の黒色から順に3番目までの色が採用されています。色の割り当ては水準の順番に対応しているので、色の割り当てを変えたい場合は、パレットに合わせて水準の順番を変更する必要があります。levels
関数で調べることができます。
levels(iris$Species)
順番を変える場合は、factor
関数で変更できます。
iris$Species <- factor(iris$Species,
levels = c("virginica", "versicolor", "setosa"))
direction
に-1を入れると、パレットの右側から順に色が割り当てられます。
好きな色を手動で指定する
任意の色を指定したい場合は、色のコードを手動で入力します。カラーパレットのそれぞれの色がどんなコードなのかは、ghibli_palettes$使いたいものの名前
で調べられます。上の例ではKikiLightを使っていたので、そちらから選びたいと思います。以下のコードを実行すると、画像のような出力が返ってきます。
ghibli_palettes$KikiLight
それでは、左から3番目、5番目、6番目の3色を指定します。
手動で指定する場合は、scale_colour_manual
関数を使います。
# ジブリ風カラーパレットを定義
ghibli_colors <- c("#D98594FF", "#D0C1AAFF", "#C0DDE1FF")
ggplot(iris, aes(Sepal.Length, Sepal.Width, color = Species)) +
geom_jitter(size = 3) +
theme_minimal() +
scale_colour_manual(values = ghibli_colors) #ここが前と違う!
おまけ:手書き風の作図
上で引用していたXの投稿では、手書きのようなグラフになっています。こちらを再現しましょう。どうやらggrough
関数を使うみたいですね。関数の詳細はこちらのページにあります( https://xvrdm.github.io/ggrough/ )。
#パッケージのインストール
devtools::install_github("xvrdm/ggrough")
library(ggrough)
適当なデータを作り、棒グラフを作成します。ここで注意点として、作成した図は、必ず変数に格納してください。
# mtcars データセットから車種ごとの平均マイル数 (mpg) を計算
avg_mpg <- aggregate(mpg ~ cyl, data = mtcars, FUN = mean)
# 棒グラフを作成
p <- ggplot(avg_mpg, aes(x = factor(cyl), y = mpg, fill = factor(cyl))) +
geom_col() +
labs(title = "Average MPG by Number of Cylinders",
x = "Number of Cylinders",
y = "Average MPG") +
theme_minimal() +
scale_fill_manual(values = ghibli_colors)
手書きのオプションを指定します。リストの中の、fill_styleでスタイルを指定します。手書き風はzigzagです。
options <- list(
Background=list(roughness=8),
GeomCol=list(fill_style="zigzag", angle_noise=0.5, fill_weight=2))
以下のget_rough_chart
関数で出力します。先ほど作成した図を格納した変数pと作図のオプションを格納したoptionを指定します。
get_rough_chart(p, options)
ちなみに、fill_styleには、solid、hachure、cross-hatch、dotsもあります。ためしにcross-hatchを指定すると、以下の図が出力されます。
最後に
今回はジブリ風のカラーパレットを紹介しましたが、Rには沢山の種類のカラーパレットがあります。例えば、色覚バリアフリーのカラーパレットもあるようです(https://www.karada-good.net/analyticsr/r-674/ )。また、カラーパレットを自作することもできるみたいです。