खोज…


परिचय

जैसा कि मैं एक से अधिक बार इसके साथ संघर्ष कर रहा था, और वेब वास्तव में क्या करना है पर स्पष्ट नहीं है, मैंने फैसला किया है कि वहां क्या है, अपने खुद के कुछ जोड़ने के लिए यह समझाने के लिए कि कैसे सबप्लॉट बनाए जाएं जिनमें एक रंगबार है और वे इसके अनुसार बढ़ाया जाता है।

मैंने नवीनतम मैटलैब का उपयोग करके इसका परीक्षण किया है लेकिन मुझे पूरा यकीन है कि यह पुराने संस्करणों में काम करेगा।

टिप्पणियों

केवल एक चीज जिसे आपको अपने आप से बाहर निकालने की आवश्यकता है वह है कलरबार की स्थिति (यदि आप इसे बिल्कुल प्रदर्शित करना चाहते हैं)। यह आपके पास मौजूद ग्राफ़ की संख्या और बार के ओरिएंटेशन पर निर्भर करेगा।

स्थिति और आकार 4 मापदंडों का उपयोग करके परिभाषित किया गया है - x_start, y_start, x_width, y_width। प्लॉट को आमतौर पर सामान्यीकृत इकाइयों के लिए बढ़ाया जाता है ताकि नीचे-बाएं कोने (0,0) और ऊपर-दाएं से (1,1) से मेल खाता हो।

यह कैसे किया है

यह 6 डी-सबप्लॉट बनाने वाला एक सरल कोड है और अंत में उनमें से प्रत्येक में प्रदर्शित रंग को सिंक करना है।

c_fin = [0,0];
[X,Y] = meshgrid(1:0.1:10,1:0.1:10);

figure; hold on;
for i = 1 : 6
    Z(:,:,i) = i * (sin(X) + cos(Y));

    ax(i) = subplot(3,2,i); hold on; grid on;
    surf(X, Y, Z(:,:,i));
    view(-26,30);
    colormap('jet');
    ca = caxis;
    c_fin = [min(c_fin(1),ca(1)), max(c_fin(2),ca(2))];
end

%%you can stop here to see how it looks before we color-manipulate

c = colorbar('eastoutside');
c.Label.String = 'Units';
set(c, 'Position', [0.9, 0.11, 0.03, 0.815]); %%you may want to play with these values
pause(2); %%need this to allow the last image to resize itself before changing its axes
for i = 1 : 6
    pos=get(ax(i), 'Position');
    axes(ax(i));
    set(ax(i), 'Position', [pos(1) pos(2) 0.85*pos(3) pos(4)]);
    set(ax(i),'Clim', c_fin); %%this is where the magic happens
end


Modified text is an extract of the original Stack Overflow Documentation
के तहत लाइसेंस प्राप्त है CC BY-SA 3.0
से संबद्ध नहीं है Stack Overflow