道格•赫尔MathWorks
(原帖在Doug的MATLAB视频教程博客。)
使用XLSREAD读取数据非常容易。请注意,在上面的视频中,我使用了一个许多人可能不知道的简单的单元模式技巧。
我们今天的问题来自于MATLAB®用户名为Sarah,她正在尝试读取Excel表格®并在MATLAB中对Excel文件中的数据做一些绘图。让我们看看她发给我的文件。
我们可以看到这里有很多不同的数据列,不包括标题行,我们往下看,这里有60个不同的值。所以我们想把它读入MATLAB得到一个图形。这个图就是一列对另一列。
在MATLAB中怎么做呢?我们可以看到我们在这里写的解决这个问题的文件。第一件事是,我需要知道我们想要读入的文件名,它刚好在这里显示。你可以看到,这可能是一系列的许多文件的一部分,她将在阅读和做图形。
所以,阅读,我们只是会说A等于xlsread,然后将该文件名这个数据。这是怎么回事,让MATLAB在此数据读取。我们选择的唯一的代码,右键单击这两条线,并说评估选择。这是要运行的两段代码。
现在,如果我们转到workspace browser,我们将看到的是,我们已经定义了文件名,当然,还有那个数据——59行,正如预期的那样,然后是该工作表的第一个工作表上的89列数据中的89列。我们可以指定读取第2页或第3页,但是我们感兴趣的数据恰好在第1页,所以我们不必指定。这只是默认的。
现在,我们有这样的一个数据,我们为什么不把它变成更易于工作,列?在这种情况下,也许我们想绘制的x值,这将是正是被存储在第一列,这是基本上是从1数到60。而在Y,我们要读,让我们说,在20th列出来,画出来。
所以我们可以简单地把一个矩阵,说我希望x拿一个,所有的行,列1,x。然后我们会做同样的事情为y。我们只是会说,让y等于矩阵A的所有行——这就是列的意思——60逗号,因此60列。然后我们把它画出来。
让我们选择这些命令并计算选择。我们看到这里有一个图。这就是引入数据并在MATLAB中绘图的简单方法。
现在,让我们展现一点点更先进的伎俩在这里。让我提出我的窗口周围这样你就可以一次性查看其中的两个。让我们说,而不是仅仅绘制号60,我们可能要情节61.因此,我将它改成61,然后按F5保存和运行,这是要更新我的阴谋。
假设我想看很多这样的例子。我能做的是选择那个数字,到这里到单元格模式,确保它通过进入单元格并禁用或启用单元格模式,然后点击+ 1。它将把这个值从61增加到62然后重新计算那个单元格中的所有东西,或者在这个例子中,整个文件。再来一次,我们会看到63号,64号,等等。你可以通过这个小技巧很快地看一下你的数据。
好的。和往常一样,如果你有任何问题,请把它们发给我,我们将在这个论坛中看看我们是否能回答它们。谢谢你!
记录:2007年9月28日