MATLAB爱好者论坛-LabFans.com

MATLAB爱好者论坛-LabFans.com (https://www.labfans.com/bbs/index.php)
-   资料存档 (https://www.labfans.com/bbs/forumdisplay.php?f=72)
-   -   如何在Matlab中显示图像上的点? (https://www.labfans.com/bbs/showthread.php?t=23959)

poster 2019-12-10 20:48

如何在Matlab中显示图像上的点?
 
我有一些像素点可以说p1(1,1)和p2(1,10).......依此类推

我想以任何颜色在图像上显示这些点。这该怎么做?



[B]回答:[/B]

MATLAB [URL="http://www.mathworks.com/help/techdoc/ref/plot.html"]plot[/URL]文档非常全面。

[URL="http://www.mathworks.com/help/techdoc/ref/linespec.html"]LineSpec[/URL]属性列出了不同样式的线,颜色和点的语法。

如果需要更多选项,请参见[URL="http://www.mathworks.com/help/techdoc/ref/lineseriesproperties.html"]LineSeries属性[/URL] 。您可以指定诸如Marker (样式), MarkerEdgeColor , MarkerFaceColor和MarkerSize 。

如果要偏离rgbcmykw,还可以使用[URL="http://www.mathworks.com/help/techdoc/visualize/f0-18164.html#f0-5919"]RGB三胞胎[/URL]来定义颜色。

例子:

用橙色的五点星形标记绘制一个点(3,4):

p=[3,4]; plot(p(1),p(2),'Marker','p','Color',[.88 .48 0],'MarkerSize',20) 用绿色“ o”标记绘制点阵列:

p=round(10*rand(2,10)); plot(p(1,:),p(2,:),'go') [B]编辑:[/B]如果您已将所有点存储为p1=[x1,y1] , p2=[x2,y2]等,请尝试首先将它们重新组织为2xN矩阵。重新生成点,或者如果您已经将它们成对,请使用

p=[p1;p2;p3]'; %# the [;] notation vertically concatenates into Nx2, %# and the ' transposes to a 2xN plot(p(1,:),p(2,:),'go') 或者,如果您将成对的点存储成对,比如说最多p1000左右,则[I]可以[/I]使用[URL="http://www.mathworks.com/help/techdoc/ref/eval.html"]eval[/URL] ( [I]cringe[/I] )。

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

[url=https://stackoverflow.com/questions/3842195]更多&回答...[/url]


所有时间均为北京时间。现在的时间是 23:31

Powered by vBulletin
版权所有 ©2000 - 2025,Jelsoft Enterprises Ltd.