3

我有一个包含 40,000 个数据点的文件。在 Matlab 中,我可以使用 plot 命令绘制绘图:

aaa = Import('file Name');
plot(aaa,mesh)

我如何在 Mathematica 中做到这一点?我试过了:

aaa = Import["File Name"]
ListPlot3D[aaa]

但它不起作用。

4

1 回答 1

8

您在这里有两个问题:(1)如何将数据导入 Mathematica 以及(2)如何显示它。

对于第一个问题,最简单的答案是:取决于数据的格式。如果文件是受支持的类型之一,则 Import 具有许多无与伦比的功能。如果您的数据只是制表符(或空格)分隔,请使用“表格”格式,如下所示:

Import["file name", "Table"]

使用各种导入选项来指定记录和字段分隔符。或者,您可以使用 ReadList,它只是读取值列表。如果您的数据是以下形式

value value value ... value
etc.

其中 value 是数字,每行是一个单独的记录,我将使用它导入它

ReadList["file name", Number, RecordLists -> True]

它将文件加载到一个矩形数组中。

至于第二个问题,如果您的数据是一组三元组,即 (x, y, z),或者只是一组高度值,那么 ListPlot3D 应该可以正常工作。如果您的数据不是 (x, y, z, f) 形式,其中 f 是 (x, y, z) 处的函数值,那么您应该改用 ListContourPlot3D。您可以使用“轮廓”选项指定所需的轮廓。请注意,ListContourPlot3D 可能需要一段时间来生成绘图,具体取决于您的数据集有多大。此外,它可能会占用内存,在我的机器(G4、MacOS 10.4、2 GB)上,一个 80 x 80 x 80 网格的 ListContourPlot3D 可以轻松占用 500 MB。

于 2009-10-28T18:39:07.950 回答