標籤:

"文字與數字混合"的新方法: string的妙用

"文字與數字混合"的新方法: string的妙用

來自專欄 MATLAB23 人贊了文章

我瀏覽了MATLAB文檔的時候, 發現了"文字與數字混合"的新方法.

我們通常會自圖形的title中顯示重要的統計量, 同時要註明具體是什麼統計量. 這樣就涉及到了如何將文字與數字混合在一起了.

比如, 在title上顯示某個向量的均值與標準差.

如下圖所示:

老的版本(string類型出現之前, R2016a或更老), 通常有兩種做法.

1 通過num2str, 將數字轉化為文字.

2 通過sprintf, 將數字格式化成文字.

rng(0);x = rand(10, 1);mu = mean(x);sigma = std(x);figure;plot(x);title([均值: , num2str(mu), , 標準差: , num2str(sigma)]);figure;plot(x);title(sprintf(均值: %f, 標準差: %f, mu, sigma));

新的版本(string類型出現以後, R2016b或更新), 有更方便直觀的做法:

figure;plot(x);title("均值: " + mu + ", 標準差: " + sigma);

相比num2str, 不需要對每個數字進行轉化

相比sprintf, 括弧少嵌套了一層, 另外, 不需要寫轉義符.

使用非常符合直覺的加法!

我初學MATLAB的時候, 第一感覺就是應該這麼寫!

另外吐糟知乎的MATLAB語法高亮還不支持string類型(雙引號).

推薦閱讀:

助力國賽 | 第2彈 擬合和插值
第3節.瓊斯矩陣與瓊斯矢量
助力國賽 | 第3彈 規劃問題(MATLAB版)
如何讓MATLAB在完成計算後通知你

TAG:MATLAB |