Contents
- Rita en triangel
- Ändra på axlarna
- Text i figuren
- Text i figuren
- Titel
- Samma text men med for-loop
- Placera ut texten med musen istället
- Attribut
- Attribut (alt)
- Fyll i triangeln med färg
- Nu ritar vi om i ett större koordinatsystem
- En rotationsmatris
- Rotera triangeln
- Rita den roterade triangeln
- Gör det 4 gånger till
- En cirkel med radie 3
- Låt radien bero av vinkeln,
- Hur många gånger skär kurvan enhetscirkeln?
- Vilka vinklar skär kurvan enhetscirkeln ?
- bestäm skärningspunkt med fzero
Rita en triangel
figure(1) % gör figur 1 aktuell clf % rensa figur 1 x=[0.2, 0.8, 0.5, 0.2] % x-koordinater y=[0.1, 0.3, 0.7, 0.1] % y-koordinater plot(x,y,'o-') % plot(x,y)
x = 0.2000 0.8000 0.5000 0.2000 y = 0.1000 0.3000 0.7000 0.1000
Ändra på axlarna
axis equal, axis([-0.1, 1.2, 0, 1])
Text i figuren
txt = '(x_1,y_1)'; % (latex och tex stöds) text(x(1)+0.1,y(1),txt); % text placeras i (0.3,0.1)
Text i figuren
txt = '(x_1,y_1)'; % (latex och tex stöds) text(x(1)+0.1,y(1),txt); % text placeras i (0.3,0.1) txt = '(x_2,y_2)'; text(x(2)+0.1,y(2),txt); txt = '(x_3,y_3)'; text(x(3)+0.1,y(3),txt);
Titel
title('En triangel');
Samma text men med for-loop
TXT = ['(x_1,y_1)'; '(x_2,y_2)'; '(x_3,y_3)']; for i = 1:3 txt = TXT(i,:); text(x(i)+0.1,y(i),txt); end
Placera ut texten med musen istället
figure(1); clf; hold on axis equal, axis([-0.1, 1.2, 0, 1]); plot(x,y,'o-'); for i = 1:3 txt = TXT(i,:); gtext(txt) end
Attribut
h = plot(x,y,'r'); h.LineWidth = 3; h.MarkerSize = 15; h.Marker = 'd';
Attribut (alt)
plot(x,y,'r','LineWidth',3,'MarkerSize',15,'Marker','d');
% % get(h) -> visar vilka attribut som finns % h.attribut = attributvärde; -> ändra värde % % eller % plot(..., 'attribut',attributvärde, ...) %
Fyll i triangeln med färg
hold on % Vi ska rita mer i samma figur fill(x,y,[0.6, 0.8, 1]) % RGB för mesblått
% Färg i RGB anges med tre tal; % Andel Rött,Grönt,Blått % 1 är maximalt av färgen, 0 är inget av färgen. % [1,1,1] blir vitt (maximalt av alla färger) % [0,0,0] blir svart (inget av någon färg) % [1,0,0] blir rött (maximalt rött, inget grönt, inget blått)
Nu ritar vi om i ett större koordinatsystem
clear all; clf; clc axis equal, axis([-1, 1, -1, 1]); hold on P = [0.2, 0.8, 0.5, 0.2; 0.1, 0.3, 0.7, 0.1] x = P(1,:); y = P(2,:); fill(x,y,[0.6, 0.8, 1],'edgecolor',[0, 0, 1],'linewidth',2) plot(x,y,'ro','linewidth',2,'markersize',5)
P = 0.2000 0.8000 0.5000 0.2000 0.1000 0.3000 0.7000 0.1000
En rotationsmatris
v=pi/3; % rotation pi/3 moturs
A=[cos(v) -sin(v); sin(v) cos(v)];
Rotera triangeln
Ph=A*P
Ph = 0.0134 0.1402 -0.3562 0.0134 0.2232 0.8428 0.7830 0.2232
Rita den roterade triangeln
xh=Ph(1,:); yh=Ph(2,:); fill(xh,yh,[1 0.8 1],'edgecolor',[0 0 1],'linewidth',2) % rosa triangel plot(xh,yh,'ro','linewidth',2,'markersize',5)
Gör det 4 gånger till
for i=1:4 Ph=A*Ph; xh=Ph(1,:); yh=Ph(2,:); fill(xh,yh,[0, 1, 0]*1/i); pause(1) end
En cirkel med radie 3
clf;
t = linspace(0,2*pi); r = 3;
x = r*cos(t); y = r*sin(t);
plot(x,y); axis equal
Låt radien bero av vinkeln,
r(t) = (2+sin(3t))/sqrt(1+exp(cos(t)))
t = linspace(0,2*pi); r = (2+sin(3*t))./sqrt(1+exp(cos(t))); x = r.*cos(t); y = r.*sin(t); plot(x,y,'linewidth',2); axis equal
Hur många gånger skär kurvan enhetscirkeln?
hold on xc = cos(t); yc = sin(t); plot(xc,yc); % enhetscirkeln
Vilka vinklar skär kurvan enhetscirkeln ?
clf; t = linspace(0,2*pi); r = (2+sin(3*t))./sqrt(1+exp(cos(t))); plot(t,r,'linewidth',3); hold on; plot(t,ones(1,100),'red','linewidth',3);
bestäm skärningspunkt med fzero
f = @(t)(2+sin(3*t))./sqrt(1+exp(cos(t)))-1; v1 = fzero(f,2); plot(v1,1,'*','markersize',15,'linewidth',3)