matlab中绘制曲线时,怎样设置符号例如圆圈的距离呢
由于数据比较密集,导致导致绘制出来的圆圈特别密集,如何能设置圆圈的间距呢。前提是不减少数据,如果每n点提取数据可以解决但丢失了数据。例如plot(y2,'k-o'),怎样...
由于数据比较密集,导致导致绘制出来的圆圈特别密集,如何能设置圆圈的间距呢。前提是不减少数据,如果每n点提取数据可以解决但丢失了数据。例如plot(y2,'k-o'),怎样设置能使圆圈间距大一些呢。谢谢
展开
4个回答
东莞大凡
2024-08-07 广告
2024-08-07 广告
作为东莞市大凡光学科技有限公司的一员,我们深知Matlab圆点标定板在相机标定中的重要性。该标定板通过均匀分布的圆点,帮助精确计算相机参数,优化成像效果。Matlab强大的编程功能,使得我们能够灵活设计标定板,调整圆点大小、数量和分布,以满...
点击进入详情页
本回答由东莞大凡提供
展开全部
程序如下:
syms xGstar yArstar
D1=1.5; D2=1.6; K=4; phi=0.01;
acstar1 = (0.5*sqrt(pi)*K*phi)^(2/(1-D1))*xGstar^2;
acstar2 = (0.5*sqrt(pi)*K*phi)^(2/(1-D2))*xGstar^2;
h = ezplot(sqrt(xGstar/pi)*(yArstar/3)^0.75*log(yArstar/(3*acstar1))+ ...
K*phi*yArstar^0.75*(3*acstar1)^0.25-3e-4,[1e-9,1e-5,1e-5,5.0e-1]);
set(h,'LineStyle','-','color','k');
X = get(h, 'x');
Y = get(h, 'y');
dX = max(X) - min(X);
dY = max(Y) - min(Y);
e = 0.01; % 距离系数,越小则越密集
clear x y
x(1) = X(1);
y(1) = Y(1);
for i = 2 : length(X)
if sqrt( ((X(i)-x(end))/dX)^2 + ((Y(i)-y(end))/dY)^2 ) >= e
x(end+1) = X(i);
y(end+1) = Y(i);
end
end
% 使用相同的颜色和线宽绘制Marker
hold on
plot(x,y,'o','color',get(h,'color'),'linewidth',get(h,'linewidth'))
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
这是比较麻烦的,我也找了许久,没发现MATLAB有现成的命令。
我的做法是按原来的密集数据y画一条线,然后提取出稀疏的数据y2在画,此时画时,只要画标记就行。
plot(y,'k');
hold on;
plot(y2,'o');
y2是y的稀疏数据。
我的做法是按原来的密集数据y画一条线,然后提取出稀疏的数据y2在画,此时画时,只要画标记就行。
plot(y,'k');
hold on;
plot(y2,'o');
y2是y的稀疏数据。
追问
您这个思路不错啊,那这两个曲线应该是重合的吧。请问怎样做出y2呢?例如每隔一点取值,那y2=y1(1:2:n), 但是y2的数据个数减少了一半。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询