Hi. I need to plot a specific type of graph using Matlab but I can't find a command to do it. If anyone can tell me what command plots graphs like this it'll be very helpful This is what the graph is supposed to look like

 채택된 답변

the cyclist
the cyclist 2015년 8월 28일

0 개 추천

I suggest you peruse the Plot Gallery for something similar, and heist the code from there.

댓글 수: 7

farheen asdf
farheen asdf 2015년 8월 28일
I have already used almost all of these plots but couldn't find anything of much help yet.
the cyclist
the cyclist 2015년 8월 28일
You might need to add some detail to your question. Do you have the x-y coordinates of all those red points? If so, can you use scatter or simply plot?
farheen asdf
farheen asdf 2015년 8월 28일
편집: the cyclist 2015년 8월 28일
I think the problem might be in my equations for x and y coordinates. I'm using the equations:
x=l1*cos(theta1)+l2*cos(theta1+theta2)
y=l1*sin(theta1)+l2*sin(theta1+theta2)
where,
l1=10;
l2=7;
0<theta1<pi/2;
0<theta2<pi
I think I haven't correctly initiated angles theta1 and theta2 this is the code i have written
theta1=0:0.01:pi/2;
theta2=0:0.02:pi;
does this give the same range as 0<theta1<pi/2? I have used the gap between the two points in theta1 and theta2 as 0.01 and 0.02 because the x-y equations require them to be of the same size.
farheen asdf
farheen asdf 2015년 8월 28일
this is what i have managed to get so far. It's almost the same but not completely. Any suggestions?
the cyclist
the cyclist 2015년 8월 28일
편집: the cyclist 2015년 8월 28일
Try this:
l1=10;
l2=7;
theta1=0:0.01:pi/2;
theta2=0:0.02:pi;
[tt1,tt2] = meshgrid(theta1,theta2);
x = l1*cos(tt1)+l2*cos(tt1+tt2);
y = l1*sin(tt1)+l2*sin(tt1+tt2);
figure
plot(x,y,'r.')
The problem was that you were not actually using all the possible pairings of (theta1,theta2).
farheen asdf
farheen asdf 2015년 8월 28일
thank you so much this is exactly what i needed :)
Happy to help. Note that in your version, you were forced to keep the number of points in the theta1 and theta2 vectors the same. You don't need to do that now, because you never actually add those two vectors to each other. That will give you more flexibility in making the figure more visually appealing (or more accurately mimic the exact figure you wanted). For example, you can do something like
theta1=0:0.05:pi/2;
theta2=0:0.05:pi;

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

카테고리

도움말 센터File Exchange에서 Line Plots에 대해 자세히 알아보기

태그

질문:

2015년 8월 28일

댓글:

2015년 8월 28일

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by