2015-06-12 12 views
16

मैं वर्ड/एक्सेल टेबल से दूर जा रहा हूं और R में एक तालिका उत्पन्न करने का प्रयास कर रहा हूं। मेरे पास एक डेटा फ्रेम है जिसे मैं बस साजिश के रूप में प्रिंट करना चाहता हूं, जबकि छाया/रंग कोशिकाओं को सक्षम करने और आम तौर पर सौंदर्यशास्त्र के साथ खेलना।तालिका के रूप में डेटा फ्रेम प्लॉट करें

x <- data.frame(row.names=paste("Name",1:10)) 
x[,1] <- 1:10 
x[,2] <- sample(1:100,10) 
x[,3] <- sample(LETTERS[1:26],10) 
colnames(x) <- c("Value 1", "Value 2", "Label") 

View(x) सिर्फ एक को बचाने करने योग्य भूखंड के रूप में, मैं अपने टेबल चाहते हैं सटीक प्रारूप प्रदान करता है।

मैं

plot(x,type="h") 

की कोशिश की लेकिन कोई त्रुटि प्राप्त:

Error in plot.default(...) : formal argument "type" matched by multiple actual arguments

मैं दो स्तंभों के साथ कैसे करने के लिए उत्पादन टेबल देखा है, लेकिन मैं डेटा फ्रेम कैसे प्लॉट कर सकते हैं के रूप में है? यह बोनस पॉइंट्स दिखाता है कि मैंने उस तालिका को एक और स्कैटर प्लॉट के नीचे कैसे चिपकाया है, ताकि आउटपुट ggsave के नीचे तालिका के साथ स्कैटर प्लॉट हो।

उत्तर

15

जब से मैं बोनस अंक के लिए जा रहा हूँ:

#Plot your table with table Grob in the library(gridExtra) 
    ss <- tableGrob(x) 

    #Make a scatterplot of your data 
    k <- ggplot(x,aes(x=x$"Value 1",y=x$"Value 2")) + 
    geom_point() 

    #Arrange them as you want with grid.arrange 
    grid.arrange(k,ss) 

आप कर सकते हैं यदि आपको आवश्यकता हो तो पंक्तियों, स्तंभों, ऊंचाई आदि की संख्या बदलें।

गुड लक के साथ यह enter image description here

http://cran.r-project.org/web/packages/gridExtra/gridExtra.pdf

+0

वाह इतना आसान है? कमाल धन्यवाद दोस्त! बोनस अंक से सम्मानित! क्या आप रॉबर्ट के जवाब पर टिप्पणियों में मेरे अतिरिक्त प्रश्न का उत्तर देने के लिए क्या होता है? – Alex

+0

उन तालिकाओं में जिन्हें हमने टी दिखाया यहां तक ​​कि नाम 1 शब्द में कोई कट ऑफ नहीं है, जहां तक ​​मैं देख सकता हूं तो आपका मतलब कैसा है? इसके अलावा, यह आपके द्वारा उपयोग की जाने वाली पंक्तियों के नामों के कारण हो सकता है। जब आप नाम 1-10 के लिए एक नया कॉलम देते हैं तो यह शायद ठीक रहेगा। – MichaelVE

+0

install.packages (gridExtra) install.packages (gridExtra) में त्रुटि: ऑब्जेक्ट 'ग्रिड एक्स्ट्रा' नहीं मिला ... पता नहीं, अगर यह अभी भी एक लाइब्रेरी है? – Coliban

15

इसे आजमाएं। हाँ pdf() का प्रयोग कर एक पीडीएफ फाइल प्लॉट करने के लिए (जैसे mydf.pdf) या png() एक PNG फ़ाइल साजिश:

library(gridExtra) 
pdf("mypdf.pdf", height=6, width=4) 
grid.table(x) 
dev.off() 

enter image description here

+1

धन्यवाद फिर से, rownames (जैसे नाम 1 "मेरे उदाहरण में) में तार tthat कहने के लिए इस टिप्पणी संपादित जहां की कट-ऑफ किया जा रहा है, भले ही मैं स्ट्रिंग उन्हें लपेटें, कोई विचार? – Alex

+1

मैंने इसके बजाय table.grob का उपयोग किया है जो इस समस्या को हल करता है, और मुझे देर से ग्रिड.रेंज का उपयोग करने की अनुमति देता है, धन्यवाद सब कुछ! – Alex

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