ワールドマップを使用してRを使用してデータを視覚化したいと考えています。ラベルは特定のポイント(指定された座標)に追加されます。ラベルは、データテーブルの値に比例した高さの3D長方形でなければなりません。私はRのパッケージ "リーフレット"(または、より良い場合は、任意の代替)を使用します。世界中に約10〜15ポイントあり、各場所に2つの値があります(具体的には、主要な油田の位置です。値は、例えば、サイズと埋蔵量です)。私はそれぞれの点に2つのそのような3D四角形を持たせたいと思います。適切な高さと数で赤色と青色を近くに置いて、それぞれの点に油田の名前を付けるようにします。リーフレットパッケージのソリューションを見つけ、適切な半径で地図に円を追加しました。カスタムラベルを使用したリーフレットマップの作成R
データ及びライブラリは、コードによってロードされる:円形標識
basin,lat,lon,res.density,rel.area
Central Sumatra,1,96,16.7,75
North Sea,58.4,2,20,24
Maracaibo basin,9,-71,74.4,14.3
Los Angeles,33,-118,31.2,32
:
library(leaflet)
basins<-read.csv("somedata.csv")
そしてsomedata.csvは、以下の構造(4本のデータラインとしてのみ最小限の実施例)を有していますマップはコマンドによって呼び出されます
m=leaflet(data = basins) %>% addTiles() %>% addCircleMarkers(~lon, ~lat , popup = ~as.character(basin),radius=~res.density*0.4,label=~htmlEscape(basin),labelOptions=labelOptions(noHide=T,textOnly=TRUE,direction="bottom"))
しかし、この解決方法はあまり良くありません。引数radius =〜res.densityを使用して2番目の値を視覚化することはできません。ここでres.densityは、自分の.csvテーブル内の最初の値の名前です。
GMTが作成したこの画像のようなものを再現したいと思います。プレーン(2D)マップを持つだけで十分ですが、フィールドの名前と各矩形の値とともに、各点に2つのそのような矩形が必要です。
GMTパッケージからの画像
素晴らしいパッケージです。凡例を調整して変数の名前だけでなく、カスタム説明を与えることは可能ですか?このオプションについては、leaflet.minichartsのドキュメントには触れていません。もちろん、%>%addLegendで凡例を手動で追加することもできますが、適切な伝説のミニチャートは、その場所でスタイリッシュに見えます。 – astrsk
パッケージdocsから、引数addMinichartsは凡例の位置を調整する可能性があります。凡例で異なる文字列を使用する場合は、単に列の名前を変更するだけです。それ以外の場合は、addLegendに移動します。 –