我有一些統計值的對稱矩陣,我想在Matlab中使用imagesc繪圖。矩陣的大小是112 X 28,這意味着我想爲每列顯示4行。我怎樣才能擺脫矩陣的上部或下部三角部分?因爲這意味着每列對角地刪除4行tril或triu函數不起作用(它們用於正方形矩陣)。 感謝擺脫對稱矩陣的上部或下部三角部分
3
A
回答
3
如果您有圖像處理工具箱,你可以使用imresize
來調整上三角面具,你就可以使用來選擇合適的數據
msk = imresize(triu(true(min(size(a)))), size(a), 'nearest');
% Just zero-out the lower diag
zeroed = msk .* a;
% Select the elements in the upper diagonal
upperdiag = a(msk);
如果沒有圖像處理工具箱(和imresize
),你可以這樣做
msk = reshape(repmat(permute(triu(true(min(size(a)))), [3 1 2]), size(a,1)/size(a,2), 1), size(a));
4
可以使用kron
功能
kron(triu(ones(28)),[1 ;1 ;1 ;1])
2
1
有很好的答案,但也許這一個可以替代使用triu功能:
% image
img = rand(112, 28);
% utilize a square matrix to use triu command
temp = nan(112, 112);
temp(:, 1:4:end) = img;
temp = triu(temp, -3);
% put the relevant elements back
img = temp(:, 1:4:end);
2
您可以bsxfun
創建蒙如下:
M = 112; % number of rows
N = 28; % number of columns
mask = bsxfun(@le, (1:M).', (1:N)*round(M/N)); % create mask
data = data.*mask; % multiply your data matrix by the mask
相關問題
- 1. 提取numpy矩陣的上/下三角部分?
- 2. 只使用下三角形(在python中)填充symm矩陣的上三角部分?
- 3. 復對稱三對角矩陣的快速矩陣指數
- 4. 擺脫Iphone屏幕頂部和底部的下拉箭頭
- 5. 擺脫尾部輸出
- 6. Android:float - 擺脫尾部零點
- 7. 下三角矩陣和上三角矩陣給我的錯誤答案
- 8. 將1D numpy數組轉換爲矩陣的頂部三角形
- 9. 塊三對角矩陣python
- 10. eigen:如何只計算矩陣內積的下/上部分
- 11. 擺脫活動頂部的漸變(Android)
- 12. 擺脫QLabel頂部的額外空間
- 13. Matlab:選擇矩陣的一部分
- 14. 如何擺脫應用程序頂部的程序名稱欄?
- 15. 茱莉亞的下三角矩陣
- 16. 如何擺脫頂部標題
- 17. 矩陣幫助:postScale如何影響矩陣的翻譯部分?
- 18. 在對角線上具有零的對稱矩陣的名稱
- 19. 填補了部分圓角矩形GDI +
- 20. Python熊貓部分坍塌2d矩陣
- 21. 將部分矩陣加載到RAM中
- 22. Rails的部分HTML逃脫
- 23. 提取下三角矩陣,而不考慮對角元素
- 24. r逆轉下三角矩陣環
- 25. 角部分
- 26. 我無法擺脫Joomla中SEF URL的「組件」部分
- 27. 如何擺脫DBGrid右側部分的空白Delphi
- 28. 三部分認證
- 29. 對象分成三個部分
- 30. 將上三角形複製到列表中幾個矩陣的下三角形
是的我有圖像處理工具箱,我得到了我想要的通過 imagesc(歸零) 謝謝! –