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

 Réponse acceptée

the cyclist
the cyclist le 28 Août 2015

0 votes

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

7 commentaires

farheen asdf
farheen asdf le 28 Août 2015
I have already used almost all of these plots but couldn't find anything of much help yet.
the cyclist
the cyclist le 28 Août 2015
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 le 28 Août 2015
Modifié(e) : the cyclist le 28 Août 2015
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 le 28 Août 2015
this is what i have managed to get so far. It's almost the same but not completely. Any suggestions?
the cyclist
the cyclist le 28 Août 2015
Modifié(e) : the cyclist le 28 Août 2015
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 le 28 Août 2015
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;

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Line Plots dans Centre d'aide et File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by