私は光沢のある画像をプロットし、画像を.png
ファイルとして保存するための保存ボタンを作成しました。私は私のラップトップ画面(を1366x768解像度)に輝いてアプリで画像を表示するシャイニープロットのpngイメージを保存して、画面上の寸法と一致するようにするにはどうすればいいですか?
server <- function(input, output) {
output$plot <- renderPlot({
plot(1:500,rep(1:5,100))
})
plotInput <- function(){
plot(1:500,rep(1:5,100))
}
output$savePlot <- downloadHandler(
filename = "file.png",
content = function(file) {
png(file)
plotInput()
dev.off()
}
)
}
、プロットを伸ばしなる(すなわち、それが幅よりも長いです)。 [注:これは私が望むものです]。
- 注:
fluidRow
を使用していますので、画像は表示する画面によってサイズが変わります。
私がプロットを保存すると、出力ファイルはアプリケーション自体に表示されたときのように、もはや横長ではなく、むしろ正方形として保存されます。
ここで、png()
機能では、width
,height
、およびunits
引数を使用して出力イメージのサイズを変更できます。
しかし、シャイニーのアプリで開いている画像のサイズはわかりません。
だから私の質問:
それが画面上で見ないときと自動的に同じ「寸法」を有するとシャイニーアプリで画像を保存する方法はありますか?
注:新しいモニタやデバイスにアプリケーションを移動すると、グラフの形状や大きさが変化するので、画像の現在のサイズを積極的に判断する方法を検討しています。私は理想的なソリューションのように自動的に決定するだろう、
再び:ここ
は私のプロットは、私のノートパソコンの画面上に光沢のあるアプリに 次のようになりますスクリーン上に表示されている現在のプロットの寸法を保存した
png
出力イメージに適用します。
を!これはすごくうまくいった!ありがとうございました! – theforestecologist
これは非常に便利でした!ありがとう@kostr – infominer