Rで解析:タイムラインの表現が簡単です「vistime」パッケージ


タイムラインなどのスケジュールの表現が簡単なパッケージの紹介です。静的な表現は「ggplot2」パッケージのコマンドが適応できるので体裁を整えるのが簡単です。また、インタラクティブな表現も可能です。

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

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

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

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

実行コマンドの紹介

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

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

###データ例の作成#####
#tidyverseパッケージがなければインストール
if(!require("tidyverse", quietly = TRUE)){
  install.packages("tidyverse");require("tidyverse")
}
#日付データの作成に便利:lubridateパッケージがなければインストール
#紹介は[ https://www.karada-good.net/analyticsr/r-467/ ]
if(!require("lubridate", quietly = TRUE)){
  install.packages("lubridate");require("lubridate")
}
set.seed(1234)
#データ作成
TestData <- tibble(StartDate = seq(lubridate::ymd("2022-10-17",
                                                  locale = "C",
                                                  tz = "Asia/Tokyo"),
                                   lubridate::ymd("2022-10-30",
                                                  locale = "C",
                                                  tz = "Asia/Tokyo"),
                                   by =  "1 days")) %>%
  mutate(
    EndDate = as.character(StartDate + days(sample(1:(length(StartDate))))),
    StartDate = as.character(StartDate),
    Event = sample(c("KA", "RA", "DA", "GOOD"),
                   length(StartDate),
                   replace = TRUE),
    Group = sample(c("A", "B", "NO"),
                   length(StartDate),
                   replace = TRUE),
    Color = sample(c("#4b61ba", "#ad8a80", "#245041",
                    "red", "yellow"),
                   length(StartDate),
                   replace = TRUE),
    FontColor = sample(c("white", "black", "red"),
                       length(StartDate),
                       replace = TRUE)) %>%
  rbind(c("2022-10-22", "2022-10-22", "TEL", "Apo", "black", "red"),
        c("2022-11-07", "2022-11-07", "TEL", "Apo", "red", "black"))
########

#ggplot2でタイムラインを作成:gg_vistimeコマンド
#イベントデータを指定:col.eventオプション
#イベント開始データを指定:col.startオプション
#イベント終了データを指定:col.endオプション
#イベント区分データを指定:col.groupオプション
#各イベントの塗色を指定:col.colorオプション
#各イベントの文字色を指定:col.fontcolorオプション
#ggplot2のコマンドが適応できます
gg_vistime(TestData,
           col.event = "Event", 
           col.start = "StartDate", 
           col.end = "EndDate", 
           col.group = "Group", 
           col.color = "Color",
           col.fontcolor = "FontColor",
           title = "TEST_KARADA", 
           optimize_y = TRUE,
           show_labels = TRUE) +
  #以下ggpllot2のコマンド
  theme_dark() +
  theme(axis.text.x = element_text(angle = 45,
                                   hjust = 1, 
                                   size = 10),
        axis.text.y = element_text(size = 15,
                                   colour = "red"))

#インタラクティブなタイムラインを作成:vistimeコマンド
vistime(TestData,
        col.event = "Event", 
        col.start = "StartDate", 
        col.end = "EndDate", 
        col.group = "Group", 
        col.color = "Color",
        col.fontcolor = "FontColor",
        title = "TEST_KARADA", 
        optimize_y = TRUE,
        show_labels = TRUE)

出力例

・gg_vistimeコマンド

・vistimeコマンド


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

スポンサードリンク

スポンサードリンク