pythonスクリプトでggplotを使用してチャートを作成する予定です。プロジェクトの詳細は次のとおりです。
リモートマシンで実行するスクリプトがあり、マシンに適切な範囲で何でもインストールできます
スクリプトはpythonで実行され、視覚化したいデータが辞書として保存されています
スクリプトは毎日実行され、データは常に同じ構造です
私の最善の策はこれを行うことだと思います...
データを取得してggplot視覚化を作成するRスクリプトを作成する
plumbr を使用して、スクリプトのREST APIを作成します
REST APIへの呼び出しを送信し、代わりにプロットのPNGを取得します
ggpy by yhatにも精通しており、Rをマシンにインストールして、コードをマシンに直接送信して、RStudioがなくてもコードを処理できるかどうかさえ疑問に思っています。
Plumbrは推奨される安全な実装でしょうか?
これは再現可能な例です
my_data = [{"Chicago": "30"} {"New York": "50"}], [{"Cincinatti": "70"}, {"Green Bay": "95"}]
**{this is the part that's missing}**
library(ggplot)
my_data %>% ggplot(aes(city_name, value)) + geom_col()
png("my_bar_chart.png", my_data)
コメントで述べたように、あなたの質問のほとんどはここで答えられるべきです: RをPython Rpy2で使用する:ggplot2への方法? 。
あなたはggplotを次のようにロードできます:
_import rpy2.robjects.packages as packages
import rpy2.robjects.lib.ggplot2 as ggp2
_
もちろん、あなたはggplot2 +依存関係が利用できると仮定します。
その後、すべてのコマンドの前に_ggp2.
_を置くことを除いて、ほとんどR構文を使用できます。
例:Python ggplot(mtcars)
の同値はggp2.ggplot(mtcars)
になります。
あなたの例:(テストされていません)
_my_data = [{"Chicago": "30"} {"New York": "50"}], [{"Cincinatti": "70"}, {"Green Bay": "95"}]
import rpy2.robjects.packages as packages
import rpy2.robjects.lib.ggp2 as ggp2
plot = ggp2.ggplot(my_data) +
ggp2.aes(city_name, value)) +
ggp2.geom_col()
plot.plot()
R("dev.copy(png, 'my_data.png')")
_