MATLAB

2014-11-02 44 views
7

Plot Dairesi MATLAB,MATLAB

'de daire çizmek için farklı yollar bulmam istendi. Ancak bazı fikirler verebilir (bazı verimsiz olabilir!),

Yöntem 1

ezpolar(@(x)1); 

Yöntem 2

t = linspace(0,2*pi,100); 
plot(sin(t),cos(t)); 

Yöntem 3

[X,Y,~] = cylinder(1,100); 
plot(X(1,:),Y(1,:)); 

Yöntem 4

ezplot('x^2 + y^2 - 1'); 

Yöntem 5

theta = linspace(0,2*pi,100); 
ro = ones(1,100); 
[X,Y] = pol2cart(theta,ro); 
plot(X,Y); 

ve ilginç aldık.

Başka fikirleriniz varsa merak ediyorum.

Teşekkürler.

Edit

Yöntem 11

azimuth = linspace(-pi,pi,100); 
r = ones(1,100); 
elevation = zeros(1,100); 
[X,Y,Z] = sph2cart(azimuth,elevation,r); 
patch(X,Y,Z) 
%% (not sure how it works! any improvement suggestions?) 

cevap

4

kutup koordinatlara gideceksin, sonra

da Yöntem 6

theta = linspace(0,2*pi,100); 
rho = ones(1,100); 
polar(theta, rho) 
var

Yöntem 8

theta = linspace(0,2*pi,100); 
rho = ones(1,100); 
z = rho.*exp(1i*theta); 
plot(z) 

yukarıdaki birinde yapılabilir: Yöntem 7

ezpolar('1') % Shortest? 


Ayrıca plot tarafından avantajı, karmaşık sayı ve how they're handled alabilir

hat.10

text(0,0,'\circ','FontSize',200) 

Birçok other unicodecharacters çevreleri üretmek için kullanılabilir

plot(real(z),imag(z)) 

Yöntem 9

plot(0,0,'o','MarkerSize',100) 

Yöntem: olarak da çizilmiştir olabilir.


için diferansiyel denklemler, örneğin, circular orbits ve dairesel limit cycles (Hopf osilatör) ile üretilmesi çevreleriyle uzanabilir.

2

Yöntem 12

rectangle('Position', [-0.5, -0.5, 1, 1], 'Curvature', [1 1]); 

Genelleştirilmiş: cevap için

circle = @(x, y, r) rectangle('Position', [x-r, y-r, 2*r, 2*r], ... 
    'Curvature', [1 1]); 

circle(0, 0, 1); 
circle(10, 20, 5); 
axis equal; 
+0

Teşekkür, – Rashid