Matlab画曲线

用matlab画曲线的方法如下:

1、matlab把数组写到文件中

如果想把MATLAB里面的一个数组写到文件里面去,比如txt文件,可以用如下的方法:
假如要写入文件的数组为I,其大小为[M,N]
fid=fopen('outfile.txt','w');
for i=1:M
    for j=1:N
        fprintf(fid,'%f ',I(i,j));  %把数据写到文件,以float形式写入,也可以为其它的格式,如%d。                               

    end
    fprintf('\n');
end
fclose(fid);

 

如果想读取文件里面的数据并存到数组。可以用如下的方法:

fid=fopen('outfile.txt','r');
for i=1:M
    for j=1:N
        B(i,j)=fscanf(fid,'%f',1);   
    end
end
fclose(fid);

%读取文件中的数据。这里fscanf函数里面的第三个参数控制一次读入的数据个数。如果缺省的话,则表示读入文件里面的所有数据。这样读入进来的数据我试了一下,是以一列的形式存放的。也即数据大小为[N,1],N为文件中总的数据量。
如果文件的数据如下:
1 2 5 
2 6 5 
2 3 6
则读入进来后变成:
1
2
5
2
6
5
2
3
6
如果指定第三个参数,则一次按第三个参数指定的量读入数据。

2、改变坐标轴刻度的显示数值

改变坐标轴显示数值,可以用:set(gca,'xtick',xtick,'xticklabel',xticklabel) ;

gca表示Get Current Axis的Handle,xtick表示显示刻度的位置,xticklabel表示显示的内容。

3、根据数组画一组曲线,其一行数据为一条曲线,其刻度设置,线型设置,线型颜色设置等

如:  

fid=fopen('a.txt','r');

  for i=1:365

    for j=1:48

      B(i,j)=fscanf(fid,'%f,',1);

    end

  end

  fclose(fid);

  figure;

  hold on;

  x=1:48;

  for k=1:365

    plot(x,B(k,:));

  end

  axis([1,48,200,1200])

  set(gca,'XTick',[2:2:48])

  xlabel('时刻t');

  ylabel('负荷数据');


显示网格:grid on

只显示横网格:set(gca,'xgrid','on')


如:

 fid=fopen('aa.txt','r');
   for i=1:3
     for j=1:6
       B(i,j)=fscanf(fid,'%f,',1);
     end
   end
   fclose(fid);
   figure;
   hold on;
   x=[1 2:2:10];
   plot(x,B(1,:),'-s','MarkerSize',4);
   plot(x,B(2,:),'-d','MarkerSize',5);
   plot(x,B(3,:),'-x','MarkerSize',7);
   axis([1,10,0,3])
   set(gca,'XTick',[1:1:10])
   set(gca,'YTick',[0:0.5:3])
   xlabel('节点数');
   ylabel('Speedup');
   legend('2倍大小','4倍大小','8倍大小')
   set(gca,'ygrid','on')

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值