2010-10-01 40 views

Respuesta

6

MATLAB plot documentación es bastante completa.

LineSpec propiedades lista la sintaxis para diferentes estilos de líneas, colores y puntos.

Si desea más opciones, consulte LineSeries Properties. Puede especificar propiedades como Marker (estilo), MarkerEdgeColor, MarkerFaceColor y MarkerSize.

También puede usar RGB triplets para definir el color, si desea desviarse de rgbcmykw.

Ejemplos:

trazar un solo punto (3,4) con una naranja de cinco puntas marcadores estrella:

p=[3,4]; 
plot(p(1),p(2),'Marker','p','Color',[.88 .48 0],'MarkerSize',20) 

Plot una matriz de puntos con verde marcadores 'O':

p=round(10*rand(2,10)); 
plot(p(1,:),p(2,:),'go') 

EDIT: Si usted tiene todos sus puntos almacenados como p1=[x1,y1], p2=[x2,y2], etc., trate de reorganizarlos en una Matriz 2xN primero. O bien volver a generar los puntos, o si ya los tienes como pares individuales, utilice

p=[p1;p2;p3]'; %# the [;] notation vertically concatenates into Nx2, 
       %# and the ' transposes to a 2xN 
plot(p(1,:),p(2,:),'go') 

O, si usted tiene un montón de puntos almacenados como pares individuales, por ejemplo, hasta P1000 o así, podría usar eval (cringe).

p=[]; %# initialize p 
for n=1:nPoints %# if you've got 1000 points, nPairs should be 1000 
eval(['p(:,n)=p',num2str(n)],''); %#executes p(:,n)=pn' for each nPoint 
end 
+0

pero quiero mostrar todos los puntos, es decir, p1, p2, p3 ..... en la imagen. Esto muestra un solo punto: o – chee

+0

¿Está almacenando puntos individuales como 'p1 = (x1, y1)', 'p2 = (x2, y2) ', etc.? No hagas eso. MATLAB está hecho para trabajar con matrices. Almacene sus puntos en una matriz de 2xN y use la opción de matriz de puntos en mi respuesta. – Doresoom

+0

Siéntase libre de votar mi respuesta si esto resuelve su problema. – Doresoom

4

sólo puede utilizar la parcela:

plot(p1(1), p1(2), 'ko'); % Small circle point in black. 
plot(p1(1), p1(2), 'r.'); % Small dot in red. 
+6

No olvides 'retener' la imagen primero. – emrea

+0

pero quiero mostrar todos los puntos i-e p1, p2, p3 ..... en la imagen. – chee

3

Usa la imagen, espera y traza.

base_points = [142.3125,93.4375; 169.4375,176.0625]; 
image(fixed); colormap(gray(256)); axis image; 
hold on; 
plot(base_points(:,1),base_points(:,2),'go'); 
+0

upvote para 'hold en' – zhangxaochen

Cuestiones relacionadas