Here is my code:
title = (['k = %0.3f ', format(f * chord / Uinf), ...
't/T = %0.3f ', format(tInterval(t) / .5) + r, ...
'\theta_p = %0.3f ', format(theta_t(t) * 180 / pi) + r, ...
' C_Y = %0.3f ', format(float(CySto(n)))]);
Is there a way of doing this?
[EDITED, Jan, Code formatted]

답변 (2개)

KL
KL 2017년 11월 20일

1 개 추천

Try this,
title(['k = ' num2str(k) ' t/T = ' num2str(t/T) ' \theta_p = '...
num2str(theta_p) '\circ C_{\Upsilon} = ' num2str(C_Y)],'Interpreter','tex')

댓글 수: 3

Zach Dunagan
Zach Dunagan 2017년 11월 21일
편집: Walter Roberson 2017년 11월 21일
I get a error saying T is undefined variable.
Here is the Python code I am trying to copy over to Matlab.
title='k = ' + '{:.3f}'.format(f*chord/Uinf) + ' t/T = ' + '{:.3f}'.format(tInterval[t]/.5) + r' $\theta_p$ = ' + '{:.3f}'.format(theta_t[t]*180/np.pi) + r'$^\circ$' + r' $C_Y = $' + '{:.3f}'.format(float(CySto[n]))
format(f*chord/Uinf) is a value, not a string. I know in fprintf() statements you can output a string with a integer. Can you do the same with a title?
Then use
title(['k = ' num2str(k) ' t/T = ' num2str(t) ' \theta_p = '...
num2str(theta_p) '\circ C_{\Upsilon} = ' num2str(C_Y)],'Interpreter','tex')
instead.
Zach Dunagan
Zach Dunagan 2017년 11월 23일
편집: Zach Dunagan 2017년 11월 23일
I've already tried this and it doesn't work. Why are you using num2str()
If you notice in the Python code it says format(f*chord/Uinf) f, chord, and Uinf is defined are numbers.
Edit: Yes, I got it figured out!
Here is what I did...
k = f*chord/Uinf;
t_T = tInterval(t)/.5;
theta_p = theta_t(t)*180/pi;
C_Y = CySto(n);
title(['k = ' num2str(k) ' t/T = ' num2str(t_T) ' \theta_p = '...
num2str(theta_p) '\circ C_{\Upsilon} = ' num2str(C_Y)],'Interpreter','tex')

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

Walter Roberson
Walter Roberson 2017년 11월 23일

0 개 추천

str = sprintf('$k = %0.3f \\qquad t/T = %0.3f \\qquad \\theta_\\rho = %0.3f ^{\\circ} \\qquad C_\\gamma = %0.3f$', f * chord / Uinf, tInterval(t) / .5, theta_t(t) * 180 / pi, CySto(n));
title(str, 'interpreter', 'latex')
Please re-check, as I did not know what the '+r' was intended to indicate

댓글 수: 5

Zach Dunagan
Zach Dunagan 2017년 11월 28일
편집: Zach Dunagan 2017년 11월 28일
Mine works.
Do these sets of code match? The file has both matlab and python on it. Do these sets of code line up? How would I save the image?
Walter Roberson
Walter Roberson 2017년 11월 28일
No MATLAB in there.
Look at print() and saveas() and imwrite() to save images.
Zach Dunagan
Zach Dunagan 2017년 11월 28일
편집: Zach Dunagan 2017년 11월 28일
Okay, I fixed the attached file.
Zach Dunagan
Zach Dunagan 2017년 11월 28일
편집: Zach Dunagan 2017년 11월 28일
I am trying to save the figure (the subplot) in a folder on my computer. How?
EDIT: Never mind just figured it out. I had to use savefig() command.
Zach Dunagan
Zach Dunagan 2017년 11월 29일
편집: Zach Dunagan 2017년 11월 30일
Can someone please help me make these equivalent? Look at the attachment with my comments.
EDIT: Okay I manage to get almost every term to match. I don't know why xVorPs[:t] in python outputs Nan in a 28 x 1, but when I do the same for matlab I get a 30 x 1 with zeros and a number at the end.
Okay, now I have both matching. However, the python has 0.122897 at the end, while the matlab had nan. Any ideas?
Here is the Python. xVorPos[:t]=xVorPos[:t]+(np.reshape(np.dot(xSPV,x[:-1]),(t,1))+np.reshape(np.sum(xVPV*x[-1],axis=1),(t,1))+xWV*wakePanelStr+np.dot(xVV,vortStrength[:t])+Uinf*np.cos(theta_t[t]))*tStep+(h_t[t+1]-h_t[t])*np.sin(theta_t[t])
Matlab
xVorPos(1:t) = xVorPos(1:t) + reshape(mtimes(xSPV, x(1:end - 1)), [t, 1]) + reshape(sum(xVPV' * x(end)), [t, 1]) + xWV .* wakePanelStr + mtimes(xVV, vortStrength(1:t)) + Uinf .* cos(theta_t(t)) .* tStep + (h_t(t+1) - h_t(t)) .* sin(theta_t(t));
Edit: I think I manage to get it to all work now. Do you know how to save multiple figures in one folder?

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

카테고리

도움말 센터File Exchange에서 Call Python from MATLAB에 대해 자세히 알아보기

질문:

2017년 11월 20일

편집:

2017년 11월 30일

Community Treasure Hunt

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

Start Hunting!

Translated by