システムとモデリング

modelica, Julia, Design Structure Matrix, SysML, 他モデリング全般について。

R Markdownでプロジェクトマネジメント(ガントチャート編

前回に引き続いてR Markdwnを使ってプロジェクト計画書を作成していきます。今回はWBSテーブルからガントチャートの生成を行います。

前回の記事は↓

otepipi.hatenablog.com

ガントチャートライブラリ

ガントチャートを生成するにはライブラリを使用します。今回の案件に使えそうなライブラリはいくつかありますが、ガントチャートのレイアウトが綺麗だと思った「lares」ライブラリを使用します。CRANには登録されていないようです。

github.com

ガントチャートの使い方は↓にあります。この記事にあったガントチャートの例が綺麗だったのでlaresを使うことにしました。

datascienceplus.com

https://datascienceplus.com/wp-content/uploads/2018/11/Captura-de-pantalla-2018-11-09-a-las-2.35.56-p.-m..png

 

今回は使用しませんでしたが、他のガントチャートライブラリには例えば「Plotly」があります。

plot.ly

Plotlyのガントチャートはマウスオーバーでタスクの詳細がポップアップされるのは良いですがレイアウトが寂しいと感じたので使用を見送りました。パラメーター設定で綺麗にできるかもしれませんが……

 

ガントチャートの実装

前回に引き続き↓のwbs.xlsxからガントチャートを作成します。

f:id:Otepipi:20190127175934p:plain

wbs.xlsx

まずはlaresをインストールしなくてはいけませんので下のように宣言します。CRANに登録されていないのでgithubからインストールする必要があります。

install.packages("devtools")
library(devtools)
install_github("laresbernardo/lares")

そしてガントチャート生成のコードは以下のようになります。


library(readxl) ##エクセルデータ読み込みのためのパッケージ
dat_wbs <- read_excel("WBS.xlsx",sheet = 1) #エクセルファイルの読み込み。
library(lares)

plot_timeline(event = dat_wbs$タスク名称, #ガントチャートの作成
              start = dat_wbs$開始日, 
              end = dat_wbs$終了日, 
              label = dat_wbs$担当者, 
              group = dat_wbs$大項目,
              save = FALSE,#チャートを出力するかどうか
              title = "xxプロジェクト",
              subtitle = "ガントチャート")

 

この結果生成されるガントチャートは↓のようになります。タスクの数が少なくスカスカのチャートですが、簡単なガントチャートを作成することができました。

f:id:Otepipi:20190203095825p:plain

生成されたガントチャート

今回はここまでにします。