how to write numbers with 10^ format in matlab?
조회 수: 18 (최근 30일)
이전 댓글 표시
How to print 123456 as 1.2x10^5 in a matlab figure?
str5 = ['CC = ' num2str(123456) ];
str = sprintf('%s',str5);
annotation('textbox',[0.1 0.1 0.1 0.1],'String',str,'FitBoxToText','on');
Any help will be greatly appriciated.
댓글 수: 0
채택된 답변
Stephen23
2022년 8월 10일
편집: Stephen23
2022년 8월 10일
str = strrep(sprintf('CC = %.1e',123456),'e','x10^')
str = regexprep(sprintf('CC = %.1e',123456),'e(\D)0*(\d+)$','x10^$1$2')
댓글 수: 4
Stephen23
2022년 8월 10일
편집: Stephen23
2022년 8월 10일
"Why does that appear like this"
This is due to how the graphics engine interprets text. You need to either:
- set the text interpreter to "none" (rather than using the default "tex"), or
- create valid tex/latex markup for the caret character (and any other special characters): https://tex.stackexchange.com/questions/77646/how-to-typeset-the-symbol-caret-circumflex-hat
str = strrep(sprintf('CC = %.1e',123456),'e','x10^')
plot(0:1,0:1)
annotation('textbox',[0.5,0.5,0.1,0.1],'String',str,'interpreter','none')
추가 답변 (0개)
참고 항목
카테고리
Help Center 및 File Exchange에서 Annotations에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!