matlab(1):使用matlab处理excel数据进行画图

目录

0 说明

1 直接使用xlsread读取出错

2 解决办法

3 绘图


0 说明

Excel数据示例(number_filter_radius_0.8_3.csv),一共99行数据(4列),第一行数据是表头

参考了一位大神的代码,修改如下:

data=xlsread('C:\Users\meng\Desktop\number_filter_radius_0.8_3_copy.csv')  

%x=data(:,4); %第4列的全部
%y=data(:,2); %第2列的全部
%x=data(1:99,4); %2到99行的第4列
%y=data(1:99,2); %2到99行的第2列
%plot(x,y) ; %绘制曲线

%参考:https://blog.csdn.net/baiyibin0530/article/details/79360804

1 直接使用xlsread读取出错

%括号内为文件路径
data=xlsread('C:\Users\meng\Desktop\number_filter_radius_0.8_3.csv')  

         将第2、3、4列数据都读取成了0,而且第一行的文本类型直接被忽略了

2 解决办法

拷贝excel文件,删除第一行和第一列(第一行是字符串/文本数据,第一列的数据过于大/相对其他三列来说)

注:如果删除的行或列的数据还需要用,可以将这些行或列的数据再单独存一个excel文件,再读取成另一个数据,如data_1,这样matlab就可以继续处理了

修改后的文件number_filter_radius_0.8_3_copy.csv如下(98行,3列):

 可以正常读取了:

3 绘图

我这里需要以第3列为x轴,第1、2列为y轴进行绘制

完整代码(代码文件名:matlab_read_excel.m):

data=xlsread('C:\Users\meng\Desktop\number_filter_radius_0.8_3_copy.csv')  

x_base=data(:,3); %第3列的全部
x=data(:,1); %第1列的全部
y=data(:,2); %第2列的全部

plot(x_base,x) ; %绘制曲线
hold on;
plot(x_base,y) ; %绘制曲线

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

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
©️2022 CSDN 皮肤主题:点我我会动 设计师:我叫白小胖 返回首页
评论

打赏作者

biter0088

谢谢啦

¥2 ¥4 ¥6 ¥10 ¥20
输入1-500的整数
余额支付 (余额:-- )
扫码支付
扫码支付:¥2
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值