How to prevent unwanted line breaks when using sgtitle function in figure?

6 ビュー (過去 30 日間)
ET
ET 2023 年 9 月 26 日
コメント済み: ET 2023 年 9 月 27 日
Hello Dears,
I created a general title which is supposed to be 1 line for a figure using the sgtitle function.
sgtitle([ 'Pt: ' pt_blk(si) ', Contact: ' num2str(cont2use(ti)) ', Target: ' hem{ti} ' ' target{ti} ' ' abbrev{ti}])
for some reason, it created multiple unwanted line breaks. Can anyone help please?

採用された回答

Walter Roberson
Walter Roberson 2023 年 9 月 26 日
pt_blk is a cell array so pt_blk(si) is a cell array.
['Pt: ', {'429-040 vs 041'}, ', Contact:']
ans = 1×3 cell array
{'Pt: '} {'429-040 vs 041'} {', Contact:'}
Alternately, pt_blk might be a string() array.
  3 件のコメント
Walter Roberson
Walter Roberson 2023 年 9 月 27 日
Observe:
['ET' "call" 'home']
ans = 1×3 string array
"ET" "call" "home"
When you concatenate a character vector and a string array, the character vectors are converted into string arrays.
You have several choices:
  • You can strjoin the string array
  • You can use + to join the parts, such as "Pt: " + pt_blk(si) + ", Contact: ' + cont2use(ti) + ", Target: ' + hem(ti) + ' ' + target(ti) + ' ' + abbrev(ti)
  • You can use {} indexing , pt_blk{si} instead of pt_blk(si)
It looks to me as if you are likely already using {} indexing as your solution everywhere other than that one place in the code.
ET
ET 2023 年 9 月 27 日
Many thanks, Mr. Roberson. The strjoin function works
sgtitle(strjoin([ 'Pt:' pt_blk(si) ', Contact:' num2str(cont2use(ti)) ', Target:' hem{ti} target{ti} '(' abbrev{ti} ')'] ))

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeAnnotations についてさらに検索

タグ

Community Treasure Hunt

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

Start Hunting!

Translated by