Rでggplot2:ヒストグラムの作成コマンド

棒で項目の値を示す棒グラフと違い、出現数を表すヒストグラムの作成コマンド「geom_bar」の紹介です。

「ggplot2」のインストールと読み込み

「tidyverse」をインストールして「ggplot2」パッケージを利用するのが便利です。

# パッケージのインストール
install.packages("tidyverse")

# パッケージの読み込み
library("tidyverse")

対象データ

下記のような、1変量のデータが対象データです。

## 対象データ
# 一変量_X or Y:Yes
#   文字:Yes
#   数字:Yes
# 二変量_X and Y:No

# 例
Chr_data <- data.frame(Chr = sample(LETTERS[c(1, 5, 8)],
                                    size = 100,
                                    replace = TRUE),
                       Group = sample(LETTERS[1:2],
                                      size = 100,
                                      replace = TRUE)) 

Num_data <- data.frame(discrete = sample(c(1, 3, 6),
                                         size = 100,
                                         replace = TRUE))

設定なしでプロット

ggplot(Chr_data, aes(x = Chr)) +
  geom_bar()

体裁の設定例

枠線色、塗色、積み上げ・グループ毎に横並びなどの表現方法の設定例です。

## 枠色の設定:colorオプション
# 各項目のみの塗分けはGroupオプションを使用しない
ggplot(Chr_data, aes(x = Chr, color = Group,
                        Group = Group)) +
  geom_bar()

# 好みの色はscale_color_manualコマンドを使用する
ggplot(Chr_data, aes(x = Chr, color = Group,
                        Group = Group)) +
  geom_bar() +
  scale_color_manual(values = c("A" = "red", "B" = "yellow"))

## 塗色の設定:fillオプション
# 各項目のみの塗分けはGroupオプションを使用しない
ggplot(Chr_data, aes(x = Chr, fill = Group,
                        Group = Group)) +
  geom_bar()

# 好みの色はscale_fill_manualコマンドを使用する
ggplot(Chr_data, aes(x = Chr, fill = Group,
                        Group = Group)) +
  geom_bar() +
  scale_fill_manual(values = c("A" = "blue", "B" = "yellow"))

## 表現方法:positionオプション
# "dodge","dodge2","stack"
ggplot(Chr_data, aes(x = Chr, group = Group)) +
  geom_bar(position = "dodge")

ggplot(Chr_data, aes(x = Chr, group = Group)) +
  geom_bar(position = "dodge2")

ggplot(Chr_data, aes(x = Chr, group = Group)) +
  geom_bar(position = "stack")

## Y軸の値で参考線を追加する
# geom_hlineコマンドを追加する
ggplot(Chr_data, aes(x = Chr)) +
  geom_bar() +
  geom_hline(color = "red", linewidth = 2,
             yintercept = 15, show.legend = NA) 

作図例

少しでも、あなたの解析に役に立ちますように!

Prices and shipping availability may change. Please refer to the product page at time of purchase.
Content displayed on this site is provided by Amazon and may be updated or removed.
Amazon Associate, karada-good earns income through qualifying sales.
タイトルとURLをコピーしました