lm20051003 发表于 2011-7-25 20:25

好东西。收了

zhangshun5233 发表于 2011-8-1 17:48

回复 1 # hyl2323 的帖子

x轴是时间,y轴与z轴分别是信号的频率与幅值吗?

凤鸣荆楚 发表于 2011-8-2 08:39

回复 22 # zhangshun5233 的帖子

这个论坛里面教你画三维的很多,你可以好好嗖嗖,时间可以是点数,也可以就是时间,频率是你的分析频率,纵坐标是幅值

月生才 发表于 2011-10-17 21:54

我想画一个hht谱的二维图,横坐标为时间,纵坐标为频率(也就是说去掉原来hht中用颜色表示能量的那一维),哪位高手指点一下。

chenlu1986 发表于 2011-10-18 14:58

回复 19 # 月生才 的帖子

直接使用工具箱就可以实现的

月生才 发表于 2011-10-19 10:20

我就是不知道具体使用哪个函数。我贴上我的程序,请你帮我看一下:
clear;close all;
fs=400;
y=linspace(1,2,500);

t=1:500;
t=t*1/400;
x1=sin(2*pi*20*t);
x2=0.4*sin(2*pi*100*t+140+pi/2);

for i=1:10            %信号加噪
    x1(i+100)=x1(i+100)+x2(i)
    x1(i+200)=x1(i+200)+x2(i)
    x1(i+300)=x1(i+300)+x2(i)
end

s=x1 ;
plot(s);                %绘制加噪后的信号

imf=emd(s);             %信号分解
=hhspectrum(imf);%处理IMF分量——求瞬时频率与振幅;
                        %A:每个imf的振幅向量;
                        %f:每个imf对应的瞬时频率;
=toimage(A,f);%继续处理IMF分量——合成每个IMF信号,求取Hilbert谱;
                        %E:振幅值;
                        %Cenf:每个网络对应的中心频率
                        
%----------时频图------------------                        
disp_hhs(E);            %画希尔伯特谱
title('希尔伯特谱');   

xiaomingneo 发表于 2011-10-26 20:43

回复 1 # hyl2323 的帖子

good!
thx!~

huangseu 发表于 2011-11-12 14:36

好东西,谢楼主

manguoyong 发表于 2011-11-15 14:47

好,谢谢

zhangshun5233 发表于 2011-12-3 21:13

我的图怎么右下角那个竖线怎么画不出来啊?
就是“myimage”这个函数

zhangshun5233 发表于 2011-12-3 21:15

http://forum.vibunion.com/data/attachment/album/201112/03/211536zbgbtg2o8gg8okfk.png

figure;
myimage(E,'3D');
右下角的竖线怎么没画出来呢?
function h=myimage(dummyCoefs,plotmode,cmap)
%   MYIMAGE 3-D visualization of coefficients.
%   DUMMYCOEFS is the coefficients matrix to be visualized.
%   Coefficients are colored using PLOTMODE.
%   PLOTMODE = 'lvl' (By scale) or
%   PLOTMODE = 'glb' (All scales) or
%   PLOTMODE = 'abslvl' or 'lvlabs' (Absolute value and By scale) or
%   PLOTMODE = 'absglb' or 'glbabs' (Absolute value and All scales)
%
%   MYIMAGE(...,'plot') is equivalent to MYIMAGE(...,'absglb')
%
%   You get 3-D plots (surfaces) using the same keywords listed
%   above for the PLOTMODE parameter, preceded by '3D'. For example:
%   MYIMAGE(...,'3Dplot') or MYIMAGE(...,'3Dlvl').
%   H is the figure handle.
%----------------------------------------------------------------------
if nargin==1
    plotmode='plot';
    cmap=colormap(jet(240));
end
if nargin==2
    cmap=colormap(jet(240));
end
NBC = 240;
if strmatch('3D',plotmode)
    dim_plot = '3D';
else
    dim_plot = '2D';
end
switch plotmode
case {'lvl','3Dlvl'}
    lev_mode= 'row';
    abs_mode= 0;
case {'glb','3Dglb'}
    lev_mode= 'mat';
    abs_mode= 0;
case {'abslvl','lvlabs','3Dabslvl','3Dlvlabs'}
    lev_mode= 'row';
    abs_mode= 1;
case {'absglb','glbabs','plot','2D','3Dabsglb','3Dglbabs','3Dplot','3D'}
    lev_mode= 'mat';
    abs_mode= 1;
otherwise
    plotmode= 'absglb';
    lev_mode= 'mat';
    abs_mode= 1;
    dim_plot= '2D';
end
if abs_mode , dummyCoefs = abs(dummyCoefs); end
plotPARAMS = {NBC,lev_mode,abs_mode,cmap};
switch dim_plot
case '2D'
    axeAct = gca;
    plotCOEFS(axeAct,dummyCoefs,plotPARAMS);
    h=axeAct;
case '3D'
    axeAct = gca;
    surfCOEFS(axeAct,dummyCoefs,plotPARAMS);
    h=axeAct;
end
%----------------------------------------------------------------------
function plotCOEFS(axeAct,coefs,plotPARAMS)
= deal(plotPARAMS{:});
coefs = wcodemat(coefs,NBC,lev_mode,abs_mode);
img   = image(coefs);
set(axeAct,'YDir','normal','Box','On');
title('Matrix''s 2-D Visualization','Parent',axeAct);
xlabel('x','Parent',axeAct);
ylabel('y','Parent',axeAct);
colormap(cmap);
%----------------------------------------------------------------------
function surfCOEFS(axeAct,coefs,plotPARAMS)
= deal(plotPARAMS{:});
img = surf(coefs);
set(axeAct,'YDir','normal','Box','On');
title('Matrix''s 3-D Visualization','Parent',axeAct);
xlabel('time','Parent',axeAct);
ylabel('frequency','Parent',axeAct);
zlabel('amplitude','Parent',axeAct);
xl = ;
yl = ;
zl = ;
set(axeAct,'Xlim',xl,'Ylim',yl,'Zlim',zl,'view',[-30 35]);
colormap(cmap);
shading('interp')

blgy 发表于 2011-12-5 16:29

下了两次,都没下,扣了我4 体能。。。。。。搂住给发个 2004031250@163.com.

lance2008 发表于 2011-12-6 18:54

{:{23}:}学习一下,论坛里还是有高人哪!

huhongping 发表于 2011-12-26 18:44

介个东西,那位有收藏到,可否拿出来分享下,谢谢。

zhjinctgu 发表于 2012-1-3 21:57

还好吧,需要自己看得懂
页: 1 [2] 3 4 5 6 7 8
查看完整版本: 画信号三维图的matlab函数(自编原创)