R: Plotly、Dash、Herokuの使用法 ver. 1

Last Updated on February 20, 2020 by shibatau

Plotly+Dash+Herokuで世界の軍事支出のChoreplethグラフを作成して、ネット上に掲載したいと思っています。

まだよく理解できていませんが、Plotlyでインターアクティブなグラフを作成し、DashでWebに対応したスクリプトにして、Herokuで保存、公開するという手順になると思っています。

PlotlyなしでDashから始めればよいのでは?とか、Herokuって制限あるの?とか、RならShinyだけですむのでは?、、、などはこれから勉強します。

それに、PlotlyはPython系だそうですから、もちろんPythonでの使用法も学びたいと思います。

 

I.Plotly

 

Plotlyをインストールして、スクリプトを実行するとRStudioのPlotペインにインターアクティブなグラフが表示されます。もちろん、他のIDEでも簡単に表示されると思います。

 

 

スクリプト

 

library(plotly)
df <- read.csv('https://raw.githubusercontent.com/plotly/datasets/master/2014_world_gdp_with_codes.csv')
# light grey boundaries
l <- list(color = toRGB("grey"), width = 0.5)
# specify map projection/options
g <- list(
  showframe = FALSE,
  showcoastlines = FALSE,
  projection = list(type = 'Mercator')
)
p <- plot_geo(df) %>%
  add_trace(
    z = ~GDP..BILLIONS., color = ~GDP..BILLIONS., colors = 'Blues',
    text = ~COUNTRY, locations = ~CODE, marker = list(line = l)
  ) %>%
  colorbar(title = 'GDP Billions US$', tickprefix = '$') %>%
  layout(
    title = '2014 Global GDP<br>Source:<a href="https://www.cia.gov/library/publications/the-world-factbook/fields/2195.html">CIA World Factbook</a>',
    geo = g
  )
p

 

to be continued

About shibatau

I was born and grown up in Kyoto. I studied western philosophy at the University and specialized in analytic philosophy, especially Ludwig Wittgenstein at the postgraduate school. I'm interested in new technology, especially machine learning and have been learning R language for two years and began to learn Python last summer. Listening toParamore, Sia, Amazarashi and MIyuki Nakajima. Favorite movies I've recently seen: "FREEHELD". Favorite actors and actresses: Anthony Hopkins, Denzel Washington, Ellen Page, Meryl Streep, Mia Wasikowska and Robert DeNiro. Favorite books: Fyodor Mikhailovich Dostoyevsky, "The Karamazov Brothers", Shinran, "Lamentations of Divergences". Favorite phrase: Salvation by Faith. Twitter: @shibatau

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.