私は現在、漁業データをプロットしており、ggplotの沿岸シェイプファイル上の海にあるさまざまな地方のポリゴンシェイプファイルを別々にプロットしています。また、私はパイのプロットを作成しました。そこでは、海のプロットを使ってadd.pie(mapplotsパッケージ)でパイを追加しました。Rの同じプロットで、パイとポリゴンをシェイプファイルからプロットする方法はありますか?
私は両方を組み合わせる方法を模索しているので、最終的には沿岸のシェイプファイルがあり、シェイプファイルとパイが上にあります。どのように私はこれを行うことができます誰も任意のアイデアを持っていますか?
ありがとうございました!
更新:plotGoogleMapsパッケージを使ってパイをプロットすると、理想的な解決策となるシェイプファイルとしてエクスポートされますが、最後にプロットしようとすると何も表示されません。 ...私はコードをつけています、多分あなたの経験は、私が間違ったことを知っているでしょうか?もう一度ありがとう:)
library(sp)
library(plotGoogleMaps)
data<-read.csv("cdis5014_all9sp.csv")
# transform the data then change into large spdf
names(data)[1]<-c("Species")
TotalCatch15 <- aggregate(data$Catch_t, list(data$Species,data$YearC, data$xLon5ctoid, data$yLat5ctoid), sum) # per species, per gear, per year, per cell
names(TotalCatch15)<-c("Species", "Year", "Long", "Lat", "tCatch")
# now subset only years 2000-2014
?subset
last15yrs <- subset(TotalCatch15, Year %in% 2000:2014)
# now average it
AvgCatch15 <- aggregate(last15yrs$tCatch, list(last15yrs$Species, last15yrs$Long, last15yrs$Lat), mean) # per species, per cell!
names(AvgCatch15)<-c("Species", "Long", "Lat", "tCatch")
AvgCatch15$Species
# now try to transform it to make these pies?
# if needed AvgCatch15$Species <- as.character (AvgCatch15$Species)
?spread
pieready <- spread(AvgCatch15, Species, tCatch, fill=0)
summary(pieready)
coordinates(pieready)<-~Long+Lat
proj4string(pieready) <- CRS('+init=epsg:4326') #epsg can also be 32662?
piereadyshp <- spTransform(pieready, CRS("+proj=longlat +datum=WGS84"))
summary(piereadyshp)
?spTransform
#using plotGoogleMaps::pieSP to generate the spatial data.frame for pie-chart
?pieSP
pies1 <- pieSP(pieready, zcol= c("ALB", "BET", "BFT", "BUM", "SAI", "SKJ", "SWO", "WHM", "YFT"), max.radius=500)
pies1$pie=rep(c("ALB", "BET", "BFT", "BUM", "SAI", "SKJ", "SWO", "WHM", "YFT"),345)
# Extract spatial polygon data.frame
library(broom)
library(ggplot2)
names([email protected])<-pies1$pie
pi1<-tidy(pies1)
ggplot() +
geom_polygon(data=pi1, aes(x=long, y=lat, group=id, fill=.id))
これはggplotが何も表示されない場所です。何かについてのより多くの情報が必要な場合は、私はそれを更新することができます。
私がそうするように簡単な解決策に遭遇していないと思います。これまではplotGoogleMapsパッケージを使って円グラフをプロットし、それを空間ポリゴンに変換してからggmapに統合しました。あなたに例を示すことを試みることができました(しかし、説明するのに時間がかかる)。 [this](https://gis.stackexchange.com/questions/214810/pie-charts-on-gis-maps-using-r)を参照することもできます –
Welcome to Stackoverflow! [ヘルプページ](http://stackoverflow.com/help)、特に[ここではどのトピックを聞くことができますか?](http://stackoverflow.com/help/)のセクションを読んでください。 on-topic)と[[どのような種類の質問を避けるべきですか?]](http://stackoverflow.com/help/dont-ask)を参照してください。また、[ツアー](http://stackoverflow.com/tour)をご覧になり、[良い質問をする方法](http://stackoverflow.com/help/how-to-ask)を読んでください。最後に、[最小限の完全で検証可能な例](http://stackoverflow.com/help/mcve)の作成方法を学んでください。 – Markus
どのようなタイプの漁業データを円グラフで表現したいですか?キャッチ・ツー・エフォート・ユニット?種の組成? – ccapizzano