Mathematica编程图谱

3 wolfram-mathematica image-processing

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

aaa = Import('file Name');
plot(aaa,mesh)
Run Code Online (Sandbox Code Playgroud)

我怎么在Mathematica中做到这一点?我试过了:

aaa = Import["File Name"]
ListPlot3D[aaa]
Run Code Online (Sandbox Code Playgroud)

但它不起作用.

rco*_*yer 8

这里有两个问题:(1)如何将数据导入Mathematica和(2)如何显示它.

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

Import["file name", "Table"]
Run Code Online (Sandbox Code Playgroud)

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

value value value ... value
etc.
Run Code Online (Sandbox Code Playgroud)

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

ReadList["file name", Number, RecordLists -> True]
Run Code Online (Sandbox Code Playgroud)

它将文件加载到矩形数组中.

至于第二个问题,如果你的数据是一组三元组,即(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.