本文へスキップ
からだにいいもの

Rのトピックスを中心に『まだ、まだ、知らない、役に立つ情報?』を発信します。

Rで解析:ワッフル図が簡単です「baffle」パッケージ

ワッフル図を簡単に作成できるパッケージの紹介です。シンボルをテキストに変換しプロットできます。

パッケージバージョンは0.2.1。実行コマンドはwindows 11のR version 4.2.1で確認しています。

パッケージのインストール

下記コマンドを実行してください。

#パッケージのインストール
install.packages("baffle")
スポンサーリンク

実行コマンドの紹介

詳細はコマンド、各パッケージのヘルプを確認してください。

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

###データ例の作成#####
set.seed(1234)
TestData <- table(sample(LETTERS[1:3], 50, replace = TRUE))
########

#ワッフルプロットの作成:waffleコマンド
#列方向のプロット数を指定:nrowオプション
#行方向のプロット数を指定:ncolオプション
#プロット列行向きを指定:byrowオプション
#プロット開始位置を指定:fromオプション;
#"bottomleft","bottomright","topleft","topright"が可能
#シンボルの設定:fオプション;square,circle,rcpolyが可能
#シンボルの積み上げ設定:stackedオプション
#rcpoly設定時の頂点数を指定:nオプション
#塗色の指定:colオプション
waffle(TestData,
       nrow = 6, ncol = NULL,
       byrow = FALSE, from = "bottomleft",
       stacked = FALSE, gap = 1,
       f = rcpoly, n = c(3, 6, 5),
       col = palette.colors(3, "Set 2"))

#凡例の追加:graphics::legendを使う
legend(x = "top", horiz = TRUE, border = NA,
       inset = 1, xpd = TRUE, bty = "n",
       legend = names(TestData), cex = 1.3,
       fill = palette.colors(3, "Set 2"),
       title = "タイトルテスト")

###文字でワッフルプロット#####
#下記オフィシャルサイトから引用
#https://j-moravec.github.io/baffle/articles/baffle.html#text-and-points
#文字サイズとテキスト内容を計算する
autotext <- function(x, y, labels, d=0.9, ...){
  cex = min(1/strheight(labels), 1/strwidth(labels))*d
  text(x, y, labels, cex=cex, ...)
}
#waffleコマンドに適応
#fオプションにautotextを適応
#labelsオプションに文字列を指定
waffle(TestData,
       nrow = 6, ncol = NULL,
       byrow = FALSE, from = "bottomleft",
       stacked = FALSE, gap = 1,
       f = autotext, labels = names(TestData),
       col = palette.colors(3, "Set 2"))
#凡例の追加:graphics::legendを使う
legend(x = "top", horiz = TRUE, border = NA,
       inset = 1, xpd = TRUE, bty = "n",
       legend = names(TestData), cex = 1.3,
       fill = palette.colors(3, "Set 2"),
       title = "タイトルテスト")
########

出力例

・waffleコマンド

・文字でワッフルプロット

少しでも、あなたの解析が楽になりますように!!

スポンサーリンク
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.