簡體   English   中英

3D陣列Matlab圖

[英]3d array Matlab plot

我有點不願意在MATLAB中繪制3D數組。 我創建了一些直方圖,這些直方圖會隨着我更改某個閾值而變化。 意思是,對於t = 65,我有一個直方圖,對於t = 70,我有一個直方圖,依此類推。 我想制作一個3D圖或曲面,其中第三個維度是此閾值(t從5的0-100間隔開始),其他兩個維度分別是強度和頻率(對於2D直方圖)。 我怎樣才能做到這一點? 我看過大多數繪圖工具,例如沖浪,等值面,切片等。 他們似乎都沒有辦法。 我的矩陣是80x100x20,其中20維是閾值的維。 有任何想法嗎? 謝謝!

也許一個例子可能會有所幫助:

%# 20 intervals
t = linspace(0,100,20+1);
labels = strtrim(cellstr(num2str([t(1:end-1);t(2:end)]', '[%g,%g)\n')));  %#'

%# some sample data parametrized by t
x = randn(1000,20);
[count,bins] = hist(x, 10);

%# plot 3D bar graph
bar3(bins, count, 'histc')

xlabel('param intervals'), ylabel('bins'), zlabel('counts')
set(gca, 'XTick',1:2:20, 'XTickLabel',labels(1:2:end))
axis tight

屏幕截圖

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM