मैं SpatialPolygons वस्तुओं के लिए बहुभुज भरण रंग और सीमा रंग कैसे बदल सकता हूं?


25

मेरे पास SpatialPolygons या SpatialPolygonsDataFrames है जिसे मैं प्लॉट करना चाहूंगा। मैं आर (बेस ग्राफिक्स, जाली ग्राफिक्स, और ggplot2) में तीन प्लॉटिंग सिस्टम का उपयोग करके रंग कैसे बदल सकता हूं?

उदाहरण डेटा:

library(sp)
Srs1 = Polygons(list(Polygon(cbind(c(2,4,4,1,2),c(2,3,5,4,2)))), "s1")
Srs2 = Polygons(list(Polygon(cbind(c(5,4,2,5),c(2,3,2,2)))), "s2")

SpDF <- SpatialPolygonsDataFrame( SpatialPolygons(list(Srs1,Srs2)), 
            data.frame( z=1:2, row.names=c("s1","s2") ) )
spplot(SpDF, zcol="z")

परीक्षण नक्शा

जवाबों:


33

बेस ग्राफिक्स ( plot)

बेस ग्राफ़िक्स के लिए, col=फिल border=सेट करें और बॉर्डर कलर सेट करें।

plot(SpDF, col="red",border="green")

यदि आप एक कोरोप्लेथ मानचित्र चाहते हैं, तो col=रंगों के एक वेक्टर पर सेट करें, प्रत्येक बहुभुज के डेटा मूल्य के लिए एक।

आधार ग्राफिक्स

जालीदार ग्राफिक्स ( spplot)

बेस ग्राफिक्स के विपरीत, col=जाली ग्राफिक्स का विकल्प बॉर्डर रंग को नियंत्रित करता है। बिना सीमा के, सेट col=NAयाcol="transparent"

spplot(SpDF, zcol="z", col=NA)

कोई सीमा नहीं

बहुभुज भरण के लिए, सेट col.regionsएक मानक आर रंग योजना (करने के लिए gray, rainbow.colors, topo.colors, आदि):

spplot(SpDF, zcol="z", col.regions=gray(seq(0,1,.01)))

col.regions

ggplot2

Ggplot2 के लिए हमेशा की तरह, आप स्तरों को निर्दिष्ट करते हैं और यह रंग योजना को चुनता है। हालाँकि, आप पूरे प्लॉट के लिए स्कीम को ओवरराइड कर सकते हैं। किसी बिंदु पर अनुसरण करने का विवरण।


बड़ा सवाल / जवाब। शायद आप पृष्ठभूमि का रंग सेट करने के बारे में जानकारी जोड़ना चाहते हैं। पृष्ठभूमि का रंग सेट करने के लिए spplot, उपयोग करें par.settings = list(panel.background=list(col="lightblue"))
nograpes
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.