声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

楼主: vivid920

[小波] 如何在MATLAB中读入DZT格式数据

[复制链接]
 楼主| 发表于 2008-5-6 20:58 | 显示全部楼层
a1(ii,i)=a22(ii,i);
改为
a(ii,i)=a22(ii,i);

m=m-51;
a1=zeros(m,n);可去掉
回复 支持 反对
分享到:

使用道具 举报

发表于 2008-5-6 21:34 | 显示全部楼层
 楼主| 发表于 2008-5-6 21:55 | 显示全部楼层
是的,但是20列紧密排列的
就像我上面已发的图片
发表于 2008-5-6 22:01 | 显示全部楼层
原帖由 vivid920 于 2008-5-6 21:55 发表
是的,但是20列紧密排列的
就像我上面已发的图片


嗯,确实是这样,我把31条线画在同一个窗口,都成直线啦
你的程序自己调试好了吧?
 楼主| 发表于 2008-5-6 22:04 | 显示全部楼层
没呢,还希望你能帮我摆平呢!:handshake
发表于 2008-5-6 22:23 | 显示全部楼层
原帖由 vivid920 于 2008-5-6 22:04 发表
没呢,还希望你能帮我摆平呢!:handshake

下面的代码是我编的,你看看,至于图只能显示成直线,以后有时间再说吧

clc
fid1=fopen('20.dzt');
[g,count]=fscanf(fid1,'%f',inf);
fclose(fid1);
m=1024;
n=count/m;
for i=1:n
    h(i,1:m)=g((i-1)*m+1:i*m);
end
figure(1);
%for l=1:n
for l=1:2
       %subplot(1,n,l);
       subplot(1,2,l);
       plot(h(l,:),1:m);
       hold on;
      axis off;
      %axis('ij');
end
发表于 2008-5-7 07:49 | 显示全部楼层
原帖由 vivid920 于 2008-5-6 22:30 发表
可是我很着急啊!咋办呢?:'(


把帖子发到Matlab讨论区吧,让里面的高手帮忙解决一下:这些曲线怎么放在一个图里比较合适?:@)
 楼主| 发表于 2008-5-7 09:04 | 显示全部楼层
原帖由 ch_j1985 于 2008-5-7 07:49 发表


把帖子发到Matlab讨论区吧,让里面的高手帮忙解决一下:这些曲线怎么放在一个图里比较合适?:@)


去试试看,呵呵!
发表于 2008-5-7 15:55 | 显示全部楼层

回复 24楼 的帖子

是你要的 ?
clc; fid=fopen('20.txt');
m=1024; a2=fscanf(fid,'%f',[m,inf]);
n=size(a2,2); a=zeros(m,n);
for i=1:n, a(:,i)=bin2dec(int2str(a2(:,i))); end
for l=1:n, subplot(1,n,l); plot(a(:,l),1:m); axis off; axis('ij'); end

[ 本帖最后由 ChaChing 于 2008-5-7 16:23 编辑 ]
zzz2.gif

评分

1

查看全部评分

 楼主| 发表于 2008-5-7 16:17 | 显示全部楼层
原帖由 ChaChing 于 2008-5-7 15:55 发表
是你要的 ?
clc; fid=fopen('20.txt');
m=1024; a2=fscanf(fid,'%f',[m,inf]);
n=size(a2,2); a=zeros(m,n);
for i=1:n, a(:,i)=bin2dec(int2str(a2(:,i))); end
for l=1:n, subplot(1,n,l); plot(a(:,l),1:m); ...


是的,太感谢你了!
感谢所有给我回复的人!谢谢!:)
 楼主| 发表于 2008-5-8 09:22 | 显示全部楼层
继续请教下大家,如何在MATLAB中生成如下图象:数据不变!
22.jpg
发表于 2008-5-8 11:58 | 显示全部楼层

回复 22楼 的帖子

楼主程序中的fread提醒我原始资料为binary
20.txt已经是text格式了, 且是binary资料(2进位)
若仍使用fread读, 资料大小变为1024*186并非1024*31
bin2dec - binary转换decimal
int2str - 整数转换文字, 原因binary资料一定是整数, bin2dec需文字输入
原先似乎直线的图, 原因为资料范围过大(0~10^5), 当然转成decimal范围小多了
发表于 2008-5-8 12:25 | 显示全部楼层
原帖由 ChaChing 于 2008-5-8 11:58 发表
楼主程序中的fread提醒我原始资料为binary
20.txt已经是text格式了, 且是binary资料(2进位)
若仍使用fread读, 资料大小变为1024*186并非1024*31
bin2dec - binary转换decimal
int2str - 整数转换文字, 原因binar ...


谢谢您的回答,但是在我的电脑(Matlab R2008a)上会出现以下错误:
Error using ==> bin2dec at 61
Binary string may consist only of characters 0 and 1

Error in ==> DZT_data2 at 9
    a(:,i)=bin2dec(int2str(a2(:,i)));

请问是什么原因造成的?谢谢啦
发表于 2008-5-8 12:54 | 显示全部楼层
Binary string may consist only of characters 0 and 1
二进制的字符串只能包含0或1
发表于 2008-5-8 13:38 | 显示全部楼层
请问楼主:附件中的数据是下面这种格式的吧?
65280 0 32767 32812 33300 33754 33851 33811 33072 30499 27142 25739 26784 29217 31844 35657 40210 40880 36655 31864 29481 29274 30234 31420 32691 34608 37242 39531 40106 37578 32121 27493 25911 26872 28891 30825 32253 33063 33488 33806 34862 37062 39565 40934 40250 37931 35110 32683 31032 30119 29769 29758 29932 30135 30165

这个好像不是binary资料吧?
不好意思,以前没有接触过这些,所以现在还请大家指点一下迷津,谢谢啦
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

QQ|小黑屋|Archiver|手机版|联系我们|声振论坛

GMT+8, 2024-5-8 15:53 , Processed in 0.057111 second(s), 20 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表