2020年1月31日金曜日

leafletを画像保存

午前
・卒論指導(原稿修正)

午後
・卒論指導(原稿修正)
・データ整理

今日は、基本的に研究室にいる、という重要な役割があり、無事に遂行した。

ここしばらくの懸念材料だった、Rでleafletを画像保存する問題、、、無事に解決した。

具体的な問題は、htmlではカラーで出力されている円グラフが、png(jpeg、pdf)で出力すると真っ黒になること。


まず、保存の方法に問題があるのかと調べたが、
mapview::mapshot()
でも、
saveWidget()
webshot()
でも、関係なかった。

で、本日気づいた、、、問題点は色の指定にあった。今思えば、赤点や黒線は出力されているのだから、保存方法に問題ないことは明白だった、、、。

当初は、下記のように10色を普段使っている「rainbow(10)」で指定していた。
m <- addMinicharts(m,
                   lng = latlon$lon2,
                   lat = latlon$lat2,
                   type = "pie",
                   width=100,
                   chartdata = spe_site[, 1:10],
                   colorPalette = rainbow(10)
                   )
これだとhtmlでは色は出るが、画像保存すると上図のように円グラフは真っ黒になる。

で、デフォルトの色指定に任せるだけで、、、問題解決!!
m <- addMinicharts(m,
                   lng = latlon$lon2,
                   lat = latlon$lat2,
                   type = "pie",
                   width=100,
                   chartdata = spe_site[, 1:10],
                   )

もちろん、色そのものを入力すれば指定することもできる。
m <- addMinicharts(m,
                   lng = latlon$lon2,
                   lat = latlon$lat2,
                   type = "pie",
                   width=100,
                   chartdata = spe_site[, 1:10],
                   colorPalette = c("#ff4b00", "#fff100", "#03af7a", "#005aff",
                                    "#4dc4ff", "#ff8082", "#f6aa00", "#990099",
                                    "#804000", "#84919e")
                   )

上級者だったらもっと綺麗なコマンドを書けるのだろうが、一応、上図はこのようにすればで作成できる。

村田諒太選手の次戦が、Pound For Poundに選ばれているカネロに決まったそうだ。ゴロフキンと並んで名前が上がっていたけど、まず対戦は無理だと思ってた。これは楽しみ。

井上尚弥選手は、WBO王者と統一戦らしい。こちらは4団体統一を期待。