2008-10-22 16 views
15

मैं MATLAB में ध्रुवीय भूखंड (पोलर (थाटा, आरएचओ)) का उपयोग कर रहा हूं।MATLAB ध्रुवीय भूखंडों पर रेडियल एक्सिस को ठीक करना

रेडियल धुरी के लिए सीमा को ठीक करने का कोई आसान तरीका है, 1.5?

मैं कार्टिमियन अक्षों के लिए xlim, ylim आदेशों के समान कुछ ढूंढ रहा हूं। अभी तक दस्तावेज़ों में कुछ भी नहीं मिला है।

उत्तर

6

यहां बताया गया है कि मैं इसे कैसे करने में सक्षम था।

MATLAB ध्रुवीय साजिश (यदि आप उपलब्ध हैंडल ग्राफिक्स विकल्पों को देखते हैं) में xlim या ylim जैसे कुछ भी नहीं है। हालांकि, मैंने महसूस किया कि पहली बात यह है सेट रेंज साजिश रची है, इसलिए मैं इस प्रकार एक [-1 1] भूखंड पर साथ त्रिज्या रेंज [-.5 .5] एक समारोह साजिश करने में सक्षम था:

theta = linspace(0,2*pi,100); 
r  = sin(2*theta) .* cos(2*theta); 
r_max = 1; 
h_fake = polar(theta,r_max*ones(size(theta))); 
hold on; 
h  = polar(theta, r); 
set(h_fake, 'Visible', 'Off'); 

कि बहुत अच्छा नहीं लग रहा है और उम्मीद है कि ऐसा करने का एक बेहतर तरीका है, लेकिन यह काम करता है।

+0

यह चालाक है। धन्यवाद। मुझे आश्चर्य है कि वे त्रिज्या पर अधिक प्रत्यक्ष नियंत्रण प्रदान नहीं करते हैं। –

+0

मुझे भी - मुझे नहीं लगता कि त्रिज्या को ट्विक करना चाहते हैं * वह * दुर्लभ –

+2

मैं एक ही समाधान के साथ आया हूं। दुर्भाग्यवश, वे आधार ग्राफ प्रकार के रूप में एक ध्रुवीय साजिश को परिभाषित नहीं करते हैं, बल्कि अक्षों को आकर्षित करने और अपने डेटा को एक्स और वाई में बदलने के लिए पैच बनाते हैं। Polar.m के लिए कोड पर एक नज़र डालें और आप देखेंगे। –

8
इस

मेरे लिए काम किया ... मैं 30 के लिए जाने की त्रिज्या रेंज चाहता था, इसलिए मैं पहली बार इस

polar(0,30,'-k') 
hold on 

साजिश रची और फिर साजिश रची मैं क्या वास्तव में में दिलचस्पी थी। यह पहली साजिश रची बिंदु के पीछे छिपा है ग्रिड अंक बस अपने अंतिम साजिश आदेश के बाद

hold off 

शामिल करना सुनिश्चित करें।

+0

मैं इस उत्तर की सादगी की सराहना करता हूं। एक जादू की तरह काम किया! – Shinobii

4

किसी और मामले किसी में, यह भर आता है यहाँ समाधान है: और gnovice ने कहा, मैटलैब मूल रूप से मानक भूखंडों के लिए एक इंटरफेस के रूप में ध्रुवीय फ़ंक्शन का उपयोग करता

Scottie के रूप में टी , लेकिन इसे ध्रुवीय दिखने के लिए दृश्यों के पीछे स्वरूपण के बहुत सारे के साथ। एक ध्रुवीय साजिश के एक्सएलआईएम और वाईएलआईएम गुणों के मूल्यों को देखें और आप देखेंगे कि वे सचमुच कार्टेसियन निर्देशांक में आपकी साजिश की एक्स और वाई सीमाएं हैं। तो, एक त्रिज्या सीमा निर्धारित करने की xlim और ylim, या अक्ष का उपयोग करें, और मूल्यों आप सेट के बारे में स्मार्ट हो:

rlim = 10; 
axis([-1 1 -1 1]*rlim); 

... बस यही वह है जो करना है। हैप्पी मैटलबिंग :)

6

सरल समाधान एक नकली ग्राफ बनाने और सफेद रंग को सेट करने का सरल समाधान है।

fake=100; 
polar(0,fake,'w'); 
hold on; 

real=10; 
polar(0,real,'w'); 
संबंधित मुद्दे