How do I plot a point on a graph?
5 次查看(过去 30 天)
显示 更早的评论
I want to plot my tau max on my Mohr's Circle graph which I was thinking was plot(C,R) but I am not getting any results. I also want it to display the value on the graph which should be 612.11
sigx=-30.90;
sigy=51.06;
tauxy=-610.74;
R=sqrt(((sigx-sigy)/2)^2+tauxy^2)
C=(sigx+sigy)/2
sig1=C+R
sig2=C-R
sigma=linspace(sig2,sig1,1000);
tau1=sqrt(R^2-(sigma-C).^2);
tau2=-tau1;
plot(sigma,tau1,'b',sigma,tau2,'b')
title('Mohrs Circle (1672.13 lbs)')
xlabel('\sigma(psi)')
ylabel('\tau(psi)')
axis('square')
hold on
plot([sig1,sig2],[0,0],'k')
plot([sigx,sigy],[-tauxy,tauxy],'g')
grid on;
0 个评论
回答(1 个)
Robert Brown
2021-4-18
编辑:Robert Brown
2021-4-18
Add these lines to the bottom of your code, to plot the desired value as a red asterisk on the existing plot with the other data plotted. Then reference the plot handle "p_include", from a legend request, to get a legend with only this plot data value included. string( R) converts R to a string and assigns it as a name for the plot which plots it on the figure.
p_include = plot(C,R,'r*','DisplayName',string(R))
legend(p_include)
chances are, your added plot of C,R was being plotted as a tiny line segment, but you just couldn't see it on your plot since it only had 1 data point.
The red asterisk will make the data point show up more clearly on your plot, and the legend will contain the numerical value R of the max value
I hope this helps ! :-)
3 个评论
Robert Brown
2021-4-18
PS if my answer helped, please vote for it :-)
Just click on the little "vote" tag by my answer
另请参阅
产品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!