मैं एक ही छवि में कई भूखंडों करना चाहते हैं, और मैं छवि के आधार पर भूखंडों की एक अलग संख्या करना चाहते हैं। सटीक होने के लिए, मैं पहले भूखंडों का 1x2 मैट्रिक्स बना देता हूं, और फिर भूखंडों का 3x2 मैट्रिक्स बना देता हूं। मैं इन दो छवियों के लिए एक ही मूल सेटिंग्स का उपयोग करना चाहते हैं - एक ही फॉन्ट विशेष रूप से आकार, के बाद से यह एक कागज के लिए है और फ़ॉन्ट आकार एक साजिश के लिए कम से कम 6 पॉइंट हो गया है।मैं आर में फोंट, प्लॉट ऑब्जेक्ट इत्यादि का आकार बदलने से कैसे रोक सकता हूं?
इस लक्ष्य को हासिल करने के लिए, मैं आर के लिए निम्न कोड लिखा है:
filename = "test.png"
font.pt = 6 # font size in pts (1/72 inches)
total.w = 3 # total width in inches
plot.ar = 4/3 # aspect ratio for single plot
mat.col = 2 # number of columns
mat.row = 1 # number of rows
dpi = 300
plot.mar = c(3, 3, 1, 2) + 0.1
plot.mgp = c(2, 1, 0)
plot.w = total.w/mat.col - 0.2 * plot.mar[2] - 0.2 * plot.mar[4]
plot.h = plot.w/plot.ar
total.h = (plot.h + 0.2 * plot.mar[1] + 0.2 * plot.mar[3]) * mat.row
png(filename, width = total.w, height = total.h, res = dpi * 12/font.pt, units = "in")
par(mfrow = c(mat.row, mat.col), mai = 0.2 * plot.mar, mgp = plot.mgp)
plot(1, 1, axes = T, typ = 'p', pch = 20, xlab = "Y Test", ylab = "X Test")
dev.off()
आप देख सकते हैं, मैं 3 इंच की कुल चौड़ाई सेट और फिर मेरी छवि के लिए कुल ऊंचाई की गणना, ताकि भूखंडों का पहलू अनुपात सही है। फ़ॉन्ट आकार केवल एक कारक द्वारा संकल्प बदलता है। वैसे भी, समस्या अब है कि फ़ॉन्ट आकार काफी बदल जाता है जब मैं mat.row = 1
से mat.row = 3
करने के लिए जाना है। अन्य बातों के साथ-साथ उदाहरण के लिए कुल्हाड़ियों और मार्जिन की लेबलिंग बदलने के लिए, है, भले ही मैं विशेष रूप से इंच में पहले उन निर्धारित किया है।
जब 3 पंक्तियों सेट कर रहे हैं (फसली छवि)::
जब केवल 1 पंक्ति सेट किया गया है (फसली छवि): एक नज़र
मैं कैसे कर सकता है इसे रोको? जहां तक मैं देख सकता हूं, मैंने जो कुछ भी किया वह मैंने किया। यह मैं काफी समय लगा, इसलिए मैं इस बजाय gglplot
का उपयोग करने जा और फिर से खरोंच से सब कुछ सीखने का काम करने के लिए प्राप्त करना चाहते हैं। यह इतना छोटा है कि मुझे उम्मीद है कि मैं बस कुछ बहुत याद कर रहा हूं।
शायद आप चाहते हैं 'सममूल्य (ps = font.pt)'? – Nate
[यह SO प्रश्न/उत्तर] (http://stackoverflow.com/questions/30467015/why-does-r-re-size-everything-in-the-plot-but-not-the-text-when-exported) सहायक हो सकता है। – eipi10
eipi10: हो सकता है कि मैं इसे गलत समझ रहा हूं, लेकिन उस उत्तर में उस व्यक्ति को पता चलता है कि जब आप चौड़ाई और ऊंचाई बदलते हैं तो तत्व समान आकार में रहते हैं। मुझे पता है कि, यह विशेष रूप से मैं यहां उपयोग करने की कोशिश करता हूं। मेरी समस्या यह है कि यह नहीं है कि यह मेरे विशिष्ट उदाहरण में कैसे काम करता है। – Fearabbit