2015-12-08 22 views
5

में त्रिज्या मंडलियां मैं कुछ बाजार के विश्लेषण के लिए library(choroplethr) उपयोग कर रहा हूँ और मैं अपने county_choropleth बनाने और या तो एक ggmap() के शीर्ष पर डालने या मेरे कोड में reference_map=TRUE उपयोग करने के बारे में कुछ सवाल हैं। जो मैं करने की कोशिश कर रहा हूं वह मेरी काउंटी कोरोपोलथ लेता है और राज्य इंटरस्टेट/राजमार्गों को स्थानांतरित करता है और इसके ऊपर मंडल/त्रिज्या खींचता है।सड़क और choroplethr, ggmap, या ggplot2

library(choroplethr) 
data <- Data.frame(County.FIPS = c(19153,19163,19153,19153,19153,19153,19153,19113,19007,19169), Score=c(812.6,769.5,757.9,757.2,722.6,712.4,69727,690.2,64539,642.5) 
county <-aggregate(data$Score~data$County.FIPS,data=data,sum) 
colnames(county) <- c("region", "value") 
mp <- county_choropleth(county, state_zoom=c("iowa"), num_colors = 1) + 
    theme(legend.position="none")+ 
    scale_fill_gradient2("Score", 
         high = "dark green", 
         low = "red", 
         na.value = "grey90", 
         breaks = pretty(county$value, n = 10), 
         label = scales::dollar_format()) 

जो मुझे इस साजिश देता है ...:

क्या मैं वर्तमान में है यह है। enter image description here

यहां से, मैं अपने मानचित्र के शीर्ष पर आयोवा राज्य में मुख्य इंटरस्टेट ओवरले करना चाहता हूं और मील के कुछ शहरों से दूरी दिखाने के लिए कुछ त्रिज्या मंडल भी बना सकता हूं। मुझे यह पसंद है इस नक्शे से तत्वों लेने के लिए और उन्हें अपने आदर्श choroplethr नक्शे में शामिल करने के लिए क्योंकि, मेरी राय में, यह इस उदाहरण में की तुलना में बहुत क्लीनर लग रहा होगा: enter image description here

मैं दूसरा नक्शा पुनः प्राप्त करने के लिए इस कोड का प्रयोग किया:

library(ggmap) 
test<-get_map(location = c(lon=-93.57217,lat=41.67269), maptype="roadmap",source="google",zoom=7,scale="auto") 
yup <- data.frame(lon=c(-93.57217,-95.87509), lat=c(41.67269,41.23238),score=c(1,1)) 
ggmap(test) + stat_density2d(aes(x = lon, y = lat, fill = score,alpha=score), 
       size = 2, bins = 2, data = yup, geom = "polygon") + 
    theme(legend.position="none") 

choroplethr पुस्तकालय में reference_map=TRUE उपयोग करने के साथ मेरी मुख्य समस्या यह है कि यह लेबल, सड़कों, आदि बाहर grays जब मैं यह की चोटी पर मेरी county_choropleth जगह है। उदाहरण के लिए, enter image description here

इसलिए, सड़कों सहित और एक नक्शे पर हलकों ड्राइंग या मैं choroplethr का उपयोग कर छोड़ देना और ggmap को, ggplot2 या कुछ और बढ़ने की जरूरत है के लिए एक आसान समाधान नहीं है? मैं अपनी वेबसाइट पर सड़कों के लिए आयोवा डीओटी आकारफाइल का पता लगाने में भी सक्षम हूं, इसलिए यह शामिल करने का एक विकल्प है, लेकिन मुझे नहीं पता कि विशेष रूप से इसे केवल मुख्य इंटरस्टेट/राजमार्गों का उपयोग करने के लिए कहें जब आर में साजिश और पढ़ाई हो। enter image description here

किसी भी और सभी की मदद के लिए अग्रिम रूप से धन्यवाद और मुझे पता है कि तुम किसी भी स्पष्टीकरण सवाल करने के लिए दिए जाने की जरूरत है कि अगर कृपया:

यहाँ मेरी 'आदर्श' एमएस पेंट इस समस्या का समाधान है मदद!

+1

मैं तुम्हारे लिए एक जवाब नहीं है, लेकिन मुझे लगता है कि पत्रक तुम क्या करने की अनुमति होगी सबकुछ, जो तुम चाहो। आउटपुट एक एचटीएमएल दस्तावेज़ है लेकिन आप इसे – MLavoie

+0

का एक स्नैपशॉट ले सकते हैं इसलिए लीफलेट में देखकर, मैं [इस] (https://i.gyazo.com/d4ab07e7901a6081898b9d1ae28f8d0f.png) के साथ आने में सक्षम हूं । मेरा सवाल तब बन जाता है जब मैं ऊपर किए गए काउंटी को लेबल करने के बारे में कैसे जा सकता हूं? क्या मुझे आकृति फाइलों का उपयोग करना है या क्या मैं अभी भी काउंटी FIPS का उपयोग पहले कर सकता हूं? वैसे, पुस्तिका एक महान उपकरण है और मैं आपको इसे चालू करने के लिए पर्याप्त धन्यवाद नहीं दे सकता! – medavis6

+1

अच्छा !!! एक पॉपअप जोड़ने का प्रयास करें https://rstudio.github.io/leaflet/shapes.html – MLavoie

उत्तर

2

जो बाद में इस पर ठोकर खा रहे हैं। मैं लाइब्रेरी को leaflet और tigris पर बदलकर क्या करने की उम्मीद कर रहा था, प्राप्त करने में सक्षम था।

enter image description here

मैं निजी इस्तेमाल के लिए अंतिम बदलाव करने पर योजना है, लेकिन यहां इस्तेमाल किया कोड है:

library(tigris) 
library(leaflet) 

data <- data.frame(County.FIPS = c(19153,19163,19153,19153,19153,19153,19153,19113,19007,19169), Score=c(812.6,769.5,757.9,757.2,722.6,712.4,69727,690.2,64539,642.5)) 
county <-aggregate(data$Score~data$County.FIPS,data=data,sum) 
colnames(county) <- c("GEOID", "Score") 

IA_counties <- counties(state="IA", cb=TRUE, resolution ="20m") 
IA_merged <- geo_join(IA_counties,county,"GEOID", "GEOID") 
pal <- colorQuantile("Greens",NULL,n=3) 
popup <- paste0("Profitability: ", as.character(IA_merged$Score)) 

yup2 <- data.frame(lon=c(-93.57217,-95.93779),lat=c(41.67269,41.25861),score=c(1,1)) 

leaflet() %>% 
    addProviderTiles("Esri.WorldStreetMap") %>% 
     addLegend(pal = pal, 
     values = IA_merged$Score, 
     position = "bottomright", 
     title = "County Profitablity: ") %>% 
    addCircles(lng=yup2$lon, lat=yup2$lat,weight=1,fillOpacity=0.05,color="red", 
     radius = 96560) %>% 
    addCircles(lng=yup2$lon, lat=yup2$lat,weight=1,fillOpacity=0.025,color="blue", 
     radius = 193121) %>% 
    addPolygons(data = IA_counties, 
     fillColor = ~pal(IA_merged$Score), 
     fillOpacity = 0.15, 
     weight = 0.2, 
     popup = popup) 
संबंधित मुद्दे