logo
Published on

Rとplotlyで積み重ね棒グラフのプロットを作る

Authors

統計プログラミング言語"R"は統計分析やデータのビジュアライズ、可視化など、データサイエンスに活用されるプログラミング言語です。R言語のチャートライブラリ、プロットライブラリである"plotly"を使用して、積み重ね棒グラフのチャートグラフ、プロットを作成します。

https://yuis.xsrv.jp/images/ss/ShareX_ScreenShot_e169b2f3-c6d6-4001-8198-f46d7b27e7b6.png

実を言いますと、R言語は僕がプログラミングはじめたてのころ、3番目に手をつけた言語だったりします。最初がRuby、そしてAutohotkey、そしてなぜかRをはじめました。この話は今回の記事と特に関係はありません。

そして最近、ラズパイをはじめたり、Chromeの検索履歴のデータベースをいじったり、タイムマネジメントツールを作ったりなど、ログデータやSQliteをいじる機会が多くなってきました。 それらを解析するのにPythonでやってもいいかなと思っていたのですが、Rの方がいいらしいという話をきいて、とりあえずやってみることにしたところです。

ということで、インストールからはじめます。 以下からRStudio 1.2.1335 - Windows 7+ (64-bit)をダウンロードし、インストールします。

Download RStudio - RStudio

なぜubuntuではなくWindowsへのインストールなのか、という疑問は以下記事を見ていただければ理解してもらえるかと思います。

[RをBashでインタラクティブに使用したかったが挫折した件]

https://yuis.xsrv.jp/images/ss/ShareX_ScreenShot_fc1464ba-9ce0-4359-848c-77ddf710abd5.png

インストールが終わりましたら、rstudio.exeを管理者権限で開きます。

管理者権限でないプロセスですと、install.packages()で外部パッケージのインストールが正常にできません。以下のようなエラーが出ます。

Error in install.packages : unable to create ‘C:/Users/OneDrive/??????/R/win-library/3.6
r - Make a file writable in order to add new packages - Stack Overflow Unable to update R packages in default library on Windows 7 - Stack Overflow https://yuis.xsrv.jp/images/ss/ShareX_ScreenShot_361847e0-d895-4d0e-acdb-64618979adf7.png

管理者権限で実行ファイルを開いたら、install.packages("plotly")を実行してplotlyをインストールしてやります。

ファイル上で操作する場合は、install.packages("plotly")の部分を選択した状態でctrl-Enterで実行します。

しましたら、以下スクリプトをコピペして実行してやります。


library(plotly)

Animals <- c("giraffes", "orangutans", "monkeys")
SF_Zoo <- c(20, 14, 23)
LA_Zoo <- c(12, 18, 29)
data <- data.frame(Animals, SF_Zoo, LA_Zoo)

p <- plot_ly(data, x = ~Animals, y = ~SF_Zoo, type = 'bar', name = 'SF Zoo') %>%
  add_trace(y = ~LA_Zoo, name = 'LA Zoo') %>%
  layout(yaxis = list(title = 'Count'), barmode = 'stack')

p

上記スクリプトはBar Charts in R | Examples | Plotlyからのコピーです。なんでこんな二番煎じの記事を書いたんだよ、と責めたくなる気持ちもわかりますが、その前に、よーくこちらのページと上記スクリプトを見比べてみてください。

……

最後のpが抜けているので、グラフは表示されないのですね。R初心者的にはきつい。おそらく、グラフを表示するpをしてしまうとその後のAPI云々が実行されないで止まってしまうんではないかと思います。コメントでここでpしてグラフを表示できるよーって書いておいてくれればいいのにと思いました。あやうく勘違いしてAPI作りそうなところでした。

(一応証拠。)

https://yuis.xsrv.jp/images/ss/ShareX_ScreenShot_45f53d19-80e3-4de7-88ad-c513d8b19201.png

まとめ

この記事では、統計プログラミング言語RとそのライブラリであるPlotlyを使用して、積み重ね棒グラフの作成方法を説明しています。以下は記事の要点とスクリプトの概要です:

  1. RおよびRStudioのインストール:

    • RStudioをインストールし、管理者権限で実行します。管理者権限がないと、パッケージのインストール時にエラーが発生することがあります。
  2. Plotlyライブラリのインストール:

    • plotlyパッケージをインストールします。RStudio内でコンソールで以下のコマンドを実行します。
    install.packages("plotly")
    
  3. Plotlyを使用した積み重ね棒グラフの作成:

    • plotlyパッケージを使用して積み重ね棒グラフを作成します。
    • スクリプトでは、data.frameを使用してデータを作成し、plot_ly関数でグラフを作成します。
    • グラフの軸ラベルや凡例を設定し、最後にpを実行してグラフを表示します。
  4. 注意点:

    • スクリプト内でpを実行することを忘れないようにしましょう。pを実行することで、グラフが表示されます。

これにより、RとPlotlyを使用して積み重ね棒グラフを作成する方法について理解できます。