मैं संख्या मैट्रिस को रंग मैट्रिस में परिवर्तित करने की प्रक्रिया में हूं; हालांकि, रंग सही ढंग से प्रदर्शित नहीं हो रहे हैं, उदाहरण के लिए, रंग मैट्रिक्स संख्या मैट्रिक्स में निर्दिष्ट संख्या के सापेक्ष गलत रंग प्रदर्शित करता है।आर (मैट्रिस या अन्यथा में) में रंगों में सही रूप से कनवर्ट करना
मैंने पहले संख्यात्मक मानों के सेट पर रंग असाइन किए।
cols <- c(
'0' = "#FFFFFF",
'1' = "#9AFC7F",
'2' = "#77F255",
'3' = "#60DF3D",
'4' = "#49C925",
'5' = "#37B215",
'6' = "#219900"
)
फिर कुछ मैट्रिक्स उत्पन्न किए।
Map1 <- read.table(text="
1 1 1 0 0 1 1 0 2 1
1 1 1 1 0 1 1 1 2 1
0 1 1 0 2 2 1 1 1 1
0 1 1 1 1 1 2 1 2 2
1 1 2 1 1 1 1 1 2 2
1 1 1 1 1 2 2 1 2 2
1 2 0 1 1 2 1 2 1 2
0 2 2 0 1 1 1 1 1 1
0 1 1 0 0 1 2 2 1 0
0 1 1 1 1 1 1 1 1 0
")
Map2 <- read.table(text="
1 2 1 1 1 1 1 0 2 1
1 1 1 1 1 1 1 1 1 1
0 2 1 1 1 2 1 1 1 1
0 0 1 2 2 1 2 2 3 2
0 1 2 2 1 1 2 2 2 2
1 1 0 2 1 1 3 2 3 3
1 1 2 2 1 2 2 2 1 2
0 1 2 2 1 2 2 2 1 2
1 1 2 1 1 1 1 2 1 1
1 1 1 1 1 1 1 1 1 1
")
मैट्रिक्स की साजिश के बाद, मुझे लगता है कि रंग उस मूल्य के साथ मेल नहीं खाते हैं जो उन्हें सौंपा जाना चाहिए था।
image(1:nrow(Map1), 1:ncol(Map1), t(apply(Map1, 2, rev)), col=cols, xaxt='n', yaxt='n', ann=FALSE, bty='n', asp = 1)
image(1:nrow(Map2), 1:ncol(Map2), t(apply(Map2, 2, rev)), col=cols, xaxt='n', yaxt='n', ann=FALSE, bty='n', asp = 1)
मैं क्यों संख्या और रंग संरेखित नहीं कर रहे हैं पता लगाने की कोशिश स्टम्प्ड किया गया है। cols
में निर्दिष्ट संख्याओं को प्लॉट करने से सही अनुक्रम उत्पन्न होता है।
d <- read.table(text="0 1 2 3 4 5 6")
image(1:nrow(d), 1:ncol(d), t(apply(d, 2, rev)), col=cols, xaxt='n', yaxt='n', ann=FALSE, bty='n', asp = 1)
वहाँ पहले नंबर मैट्रिक्स में किसी भी 6
मान नहीं हैं, इसलिए वहाँ पहले रंग मैट्रिक्स में किसी भी अंधेरे वर्गों नहीं होना चाहिए। ऐसा प्रतीत होता है कि 2
के मानों को पहले मैट्रिक्स में 6
पर दिया गया रंग दिया गया है, और 3
से 6
दूसरे में दिया गया है।
पहले नंबर मैट्रिक्स में एक 3
जोड़ना, मैट्रिक्स में सबसे बड़ी संख्या में गहरे रंग वाले असाइन किया गया है, बल्कि रंग यह cols
में सौंपा गया था की तुलना में रंग पैमाने, अर्थात् नीचे अन्य मूल्यों शिफ्ट करने के लिए लगता है।
Map1.2 <- read.table(text="
1 1 1 0 0 1 1 0 2 1
1 1 1 1 0 1 1 1 2 1
3 1 1 0 2 2 1 1 1 1
0 1 1 1 1 1 2 1 2 2
1 1 2 1 1 1 1 1 2 2
1 1 1 1 1 2 2 1 2 2
1 2 0 1 1 2 1 2 1 2
0 2 2 0 1 1 1 1 1 1
0 1 1 0 0 1 2 2 1 0
0 1 1 1 1 1 1 1 1 0
")
image(1:nrow(Map1), 1:ncol(Map1), t(apply(Map1, 2, rev)), col=cols, xaxt='n', yaxt='n', ann=FALSE, bty='n', asp = 1)
image(1:nrow(Map1.2), 1:ncol(Map1.2), t(apply(Map1.2, 2, rev)), col=cols, xaxt='n', yaxt='n', ann=FALSE, bty='n', asp = 1)
संख्या मैट्रिक्स जो इन दो रंग मैट्रिक्स उत्पन्न के बीच फर्क सिर्फ इतना है पहले कॉलम में 0
है, तीसरी पंक्ति एक 3
में बदल गया था।
अच्छा सवाल है, लेकिन (1) क्या आप कृपया डेटा शामिल कर सकते हैं जो हमें एक [पुनरुत्पादित उदाहरण] प्रदान करेगा (http://stackoverflow.com/questions/5963269/how-to-make-a-great- आर-पुनरुत्पादित उदाहरण)? (2) आपको पता होना चाहिए कि कोड स्निपेट आर कोड के लिए कुछ भी उपयोगी नहीं करते हैं - कोड ब्लॉक के लिए इंडेंटेशन का उपयोग करने के लिए सबसे अच्छा –
समस्या को पुन: उत्पन्न करने के लिए आवश्यक सभी डेटा प्रश्न में होना चाहिए। एकमात्र डेटा संख्या matrices हैं, और मैं उपयोग किया जाने वाला एकमात्र कोड यहां पृष्ठ पर है। – Cameron
संख्या मैट्रिक्स (भी, (बहुत) छोटे मैट्रिक्स समस्या उत्पन्न होने के लिए साथ काम करने के आसान होगा?) से उत्पन्न होने के लिए एक विशेष रूप से सुविधाजनक स्वरूप में नहीं हैं ... –