我有一些像素点可以说p1(1,1)和p2(1,10).......依此类推
我想以任何颜色在图像上显示这些点。这该怎么做?
回答:
MATLAB
plot文档非常全面。
LineSpec属性列出了不同样式的线,颜色和点的语法。
如果需要更多选项,请参见
LineSeries属性 。您可以指定诸如Marker (样式), MarkerEdgeColor , MarkerFaceColor和MarkerSize 。
如果要偏离rgbcmykw,还可以使用
RGB三胞胎来定义颜色。
例子:
用橙色的五点星形标记绘制一个点(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')
编辑:如果您已将所有点存储为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左右,则
可以使用
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
更多&回答...