Rで解析:コンソールのテキストに色付けが楽しいです「multicolor」パッケージ

Rの解析に役に立つ記事

コンソールのテキストに色を付けて表示が可能なパッケージの紹介です。パッケージにはrmd形式で出力するコマンドも収録されています。コマンド例ではrmd形式を利用して、RStudioのViwerで表示する例も紹介しています。

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

スポンサーリンク
スポンサーリンク

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

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

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

実行コマンド

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

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

###データ例の作成#####
set.seed(1234)
n <- 300
TestData <- paste(sample(c(LETTERS, " "), n, replace = TRUE),
                  collapse = "")
########

#コンソール表示をカラフルにする:multi_colorコマンド
#表示内容:txtオプション
#色指定:colorsオプション
#出力タイプ:typeオプション;"message","warning","string","rmd"
#色の方向:directionオプション;"horizontal"/"vertical"
#色の付け方:recycle_chars;TRUE:一文字ずつ/FALSE:全体を偶数で分割
multi_color(txt = TestData,
            colors = c("mediumpurple",
                       "rainbow",
                       "cyan3"),
            type = "message",
            direction = "vertical",
            recycle_chars = FALSE)

#テキストを三角形表示に整える:triangle_stringコマンド
#multi_colorコマンドと組み合わせえ使用します
#頂点の文字数を指定:maxlenオプション
#行ごとに増加する文字数:stepオプション;
#マイナスで逆三角形,maxlenオプションを大きくするのがポイント
triangle_string(string = TestData,
                maxlen = 3, step = 3, 
                display = FALSE) %>%
  multi_color()

#文字の中央寄せ:center_stringコマンド
#triangle_stringコマンドの次に使用する
triangle_string(string = TestData,
                maxlen = 3, step = 3, 
                display = FALSE) %>%
  center_string() %>%
  multi_color()

###おまけRStudioのViewerで表示する#####
#データを準備
triangle_string(string = TestData,
                maxlen = 3, step = 3, 
                display = FALSE) %>%
  multi_color(type = "rmd",
              add_leading_newline = TRUE) -> TestHTML

#tempフォルダにファイルを保存しRStudioのViewerで表示
Test.File <- tempfile(fileext = ".html")
cat(paste0("<div style='font-family: Monaco'>",
           TestHTML, "</div>"),
    file = Test.File)
rstudioapi::viewer(Test.File)
########

出力例

・コンソールのテキストに色を付けて表示

・おまけRStudioのViewerで表示するを実行後のHTMLコードを埋め込んで紹介

文字列を選択可能です。


PZV
ELOIEF
PDBGVZFON
TNXDDUHTXCDZ
EBOHTPLCWISVDH
JKBUOVQFXSFQQYHZQ
HJOVCIPCVYJWVXMYCSRUX
ZWFTIGSFELHPADWSITQFVZF
UUMQBFZBUPKDCZDUJFFIKSYVNHQ
MYPBFXKFSWOUVNWSSGIPHCZPVWBE
PUICHCHSYDXTSZGQYCBEOOJVYQCYPITLE
QCOVEFRSRWKPFGHDKOQKGJXKCZRKXAHHVJET
LJTAVFCDDKCASAYLSJUMLAUMJVMHRWBXFYUNF
EKNITTAAOFUJBKYRLKSEYBFBEWM

タイトルとURLをコピーしました