フィルターのクリア

Info

この質問は閉じられています。 編集または回答するには再度開いてください。

Using the text command, how can I display a string genrated from sprintf and a string in one line?

1 回表示 (過去 30 日間)
S
S 2015 年 2 月 16 日
閉鎖済み: MATLAB Answer Bot 2021 年 8 月 20 日
I want to display the p value of a ttest on a graph that I have constructed. The label has to be in the format "p = XXXX" where XXXX is the p value. I used the ttest2 command to calculate the p value which I saved under the variable p_num. The command I am currently using is:
text(mean(xlim),max(ylim),['p =',p_num])
However this is not working. How can I get this to be displayed in the proper format on the graph?
  1 件のコメント
Stephen23
Stephen23 2015 年 2 月 17 日
What does "this is not working" actually mean? Do you get any text at all? Does it display the wrong text? Did it blow up your computer? We do try to read minds, but your explanation is better.

回答 (1 件)

James Tursa
James Tursa 2015 年 2 月 16 日
編集済み: James Tursa 2015 年 2 月 16 日
text(mean(xlim),max(ylim),sprintf('p = %4d',p_num))
If you need the leading 0's printed then
text(mean(xlim),max(ylim),sprintf('p = %04d',p_num))
  4 件のコメント
S
S 2015 年 2 月 17 日
Yes it is a string. Here is the full context of what I am doing. Apm and Abm are a set of values.
[h,pvl]= ttest2(Apm,Abm);
p_num = sprintf(['%.4f', pvl]);
text(mean(xlim),max(ylim),['p =',p_num])
Stephen23
Stephen23 2015 年 2 月 17 日
You don't need the intermediate string. Try this:
[h,pvl] = ttest2(Apm, Abm);
text(mean(xlim), max(ylim), sprintf('p = %.4f', pvl))

この質問は閉じられています。

Community Treasure Hunt

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

Start Hunting!

Translated by