2012-10-12 15 views
11

मैं MATLAB का उपयोग करके एक ताप मानचित्र बनाने की कोशिश कर रहा हूं, लेकिन MATLAB प्रोग्राम में डिफ़ॉल्ट फ़ंक्शन मुझे कोई समझ नहीं आता है।MATLAB गर्मी मानचित्र

http://www.mathworks.com/help/bioinfo/ref/heatmap.html

ऐसा कोई है जो मुझे लेबलिंग पहले के साथ मदद कर सकता है, ताकि मैं उस के बाद अन्य समारोह अपने आप के माध्यम से पढ़ सकते हैं है? या क्या कोई अन्य कार्यक्रम है जिसमें अधिक उपयोगकर्ता के अनुकूल इंटरफेस होगा?

HeatMap(Data, ...'RowLabels', RowLabelsValue, ...) 

मैं एक 81*2 मैट्रिक्स के एक डेटा सेट और मेरे लेबल x- अक्ष के लिए एक 81*1 सेल और y- अक्ष के लिए 1*2 है। अब मैं एक्सेल डेटा का सफलतापूर्वक एक्सेल डेटा आयात कर सकता हूं और डेटा को साजिश कर सकता हूं, लेकिन मुझे हीटमैप फ़ंक्शन में चर में भरने में कठिनाई होती है।

बहुत बहुत धन्यवाद।

+1

हीटमैप डेटा प्राप्त करता है जो एक मैट्रिक्स है। अगर मैं आपको सही ढंग से समझता हूं, तो आपके पास केवल (x, y) मैट्रिक्स निर्देशांक हैं। अपने एक्स-वाई निर्देशांक से मैट्रिक्स बनाने के लिए पहले प्रयास करें। – bla

+0

क्या आपका मतलब है कि आप एक हीटमैप चाहते हैं जिसे क्लस्टर किया गया हो? – Bitwise

उत्तर

2

मुझे यकीन नहीं है कि आप वास्तव में क्या करने की कोशिश कर रहे हैं, लेकिन मुझे लगता है कि आप colormap{} का उपयोग करना चाहेंगे। यदि आप क्लासिक "heatmap" बनाने की कोशिश कर रहे हैं, तो Colormap वह फ़ंक्शन है जिसे आप चाहते हैं। असल में, यदि आपके पास x, y स्थिति, और एक Z मान है जिसे आप रंग के रूप में प्रस्तुत करना चाहते हैं, तो यह आपके लिए चाल है।

26

हीटमैप वास्तव में इसके लिए मानक कार्य नहीं है, यह जैव सूचना विज्ञान टूलबॉक्स से आता है। एक हीटमैप ड्राइंग का आसान तरीका हो सकता है जैसे:

A = 1:50;   % matrix to draw 
colormap('hot'); % set colormap 
imagesc(A);  % draw image and scale colormap to values range 
colorbar;   % show color scale 

रूप @natan का सुझाव दिया, आप पहली बार अपने मैट्रिक्स का निर्माण करने के लिए और फिर image या imagesc का उपयोग कर आकर्षित कर सकते हैं। इसके अलावा आप मेरे ब्लॉग पर आलेख देखना चाहते हैं जो दिखाता है कि some color sets are better for accessibility than others, उदा। ग्रेस्केल में या रंग दृष्टि की कमी में मुद्रण के लिए।

+0

सरल और सुरुचिपूर्ण, प्यारा! – Gerard

0

आप एक हीटमैप बनाने के लिए Plotly MATLAB API का उपयोग कर सकते हैं। इस प्रयास करें:

r = plotly({struct('z',randn(50,50), 'type','heatmap')}) % => https://plot.ly/~matlab_example/18dos(['open ', r.url]) 

this heatmap

आप इंटरैक्टिव संस्करण और स्थापना here देख सकते हैं।

प्रकटीकरण, मैं प्लॉटली टीम पर हूं।

0

MATLAB contourf कमांड आपके लिए उपयोगी हो सकता है।