5
में प्लॉट 3 डी अंक मैं मूल्य के आधार पर विभिन्न रंगों में Matlab
में 3 डी अंक प्लॉट करना चाहता हूं। मुझे निम्नलिखित कोड मिल गया है, लेकिन यह काम नहीं करता है क्योंकि plot3d
को वेक्टर की आवश्यकता है।मैटलैब
x = vdhf_data.data(:,1);
y = vdhf_data.data(:,2);
z = vdhf_data.data(:,3);
data = vdhf_data.data(:,4);
grid on
hold all
for k=1:length(x)
if data(k) < 6
plot3d(x(k), y(k), z(k), 'ws--', 'MarkerEdgeColor', 'r', 'MarkerFaceColor', 'r')
else
plot3d(x(k), y(k), z(k), 'ws--', 'MarkerEdgeColor', 'g', 'MarkerFaceColor', 'g')
end
end
मैटलैब में ऐसा कैसे करें?
मैं बजाय मानना है कि 'लोगों (आकार (x))' scatter3 में आकार वेक्टर डिफ़ॉल्ट आकार के लिए एक ही आकार या एक खाली ('[]') के लिए अदिश मूल्य हो सकता है। – yuk
हां एक स्केलर हो सकता है। मैं केवल दो मार्ककॉलर्स रखना चाहता हूं। क्या इसे लूप के बजाय एक पंक्ति में जोड़ने की संभावना है? – Razer
आपको बस अपने कोलोमैप को समायोजित करने की आवश्यकता होगी। तो दो रंगों (लाल और नीले) के लिए आप इस 'colormap ([वाले (50,1) * [1 0 0]; कुछ (50,1) * [0 0 1]]) जैसे कुछ करेंगे डेटा रेंज के बीच में रंग विभाजन। यदि आप इसे एक विशिष्ट संख्या में रखना चाहते हैं तो आपको तदनुसार (एन-ए, 1) वाले (एन + ए, 1) को स्केल करना होगा – zamazalotta