2013-01-11 15 views
7

HI मैं एक अनुमान में डेटा को दिखाने के लिए ggmap और gg_point फ़ंक्शन का उपयोग कर रहा हूं।geom_text काम नहीं कर रहा है जब ggmap और geom_point

कोड है कि मैं का इस्तेमाल किया इस प्रकार है:

library(ggmap) 
al1 <- get_map(location = c(lon = -87.525, lat = 30.35), zoom = 12, maptype = 'terrain') 

lon<- c(-87.604474,-87.55) 
lat<- c(30.362563,30.35) 
label <- c("A","B") 
df<-data.frame(lon,lat,label) 

p <- ggmap(al1)+geom_point(data=df,aes(x=lon,y=lat,shape=label,label=label),size=3) 
p <- p + xlab("Longitude")+ylab("Latitude") 
p <- p +geom_text(aes(label=label, size=3,vjust=0)) 
p <- p + labs(title="Monitoring stations ") 
p 

ggsave("plot.pdf") 

यहाँ जब मैं geom_text तो का उपयोग मैं निम्नलिखित त्रुटि मिलती है, "सौंदर्य या तो लंबाई एक, या के रूप में ही लंबाई होना चाहिए dataProblems: लेबल "।

मैं साजिश में बिंदुओं के बगल में लेबल रखना चाहता हूं। मैं दोनों बिंदुओं और लेबल और कुछ दूरी के साथ रखना चाहता हूं ताकि इसे पढ़ना आसान हो।

मैं इस पोस्ट "ggplot legend issue w/ geom_point and geom_text" को देखा और जैसा कि आप ऊपर देख सकते हैं मेरी कोड को ठीक करने की कोशिश की लेकिन मैं नहीं जानता कि मैं क्यों इस मुद्दे को हो रहा है।

एक और पोस्ट How can I persuade ggplot2 geom_text to label a specified date in a time series plot? है जो समान प्रश्नों की बात करता है। क्या मुझे अलग-अलग परिणाम मिल रहे हैं क्योंकि मैं ggmap का भी उपयोग कर रहा हूं?

कृपया इस समस्या को हल करने में मेरी मदद करें। बहुत बहुत धन्यवाद।

Jdbaba

उत्तर

10

आपकी समस्या यह है कि आप सही ढंग से geom_text में सौंदर्यशास्त्र निर्दिष्ट नहीं किया है है:

geom_text(data = df, aes(x = lon, y = lat, label = label), 
      size = 3, vjust = 0, hjust = -0.5) 

आप डेटा फ्रेम df से चर का उपयोग करने के लिए geom_text नहीं बताया। यदि आप ऐसा नहीं करते हैं, तो सभी सौंदर्यशास्त्र मुख्य कॉल से विरासत में प्राप्त होते हैं। अंत में, एक मूल्य के लिए सौंदर्यशास्त्र सेट करते समय, आप इसे aes() के अंदर नहीं करते हैं, लेकिन बाहर।

लेबल को दृश्यमान करने के लिए मैंने hjust सेटिंग के साथ बंदर लगाया।

+0

धन्यवाद जोरन, मैंने अभी यह पता लगाया है और इसे पोस्ट करने जा रहा था। आपके समय के लिए बहुत बहुत शुक्रिया। –

+0

@Jdbaba कोई समस्या नहीं है। (मैं 'आकार', बीटीडब्ल्यू) को अनैप करने के बारे में गलत था। – joran

+0

मैं सिर्फ आर और जीजीप्लॉट सीख रहा हूं और आपके द्वारा प्रदान किए जाने वाले समर्थन के प्रकार से बहुत उत्साहित हूं। धन्यवाद @ जोरेन और @ जोश ओ'ब्रायन –

संबंधित मुद्दे