C++ 从c+绘制二维晶格数据+;在数学中
我有一个(可能是愚蠢的)问题: 如何在Mathematica(9)中绘制C++程序生成的D格数据? (直觉上我认为这不会太难,但对于谷歌、stackoverflow等,我找不到任何解决方案)C++ 从c+绘制二维晶格数据+;在数学中,c++,plot,wolfram-mathematica,C++,Plot,Wolfram Mathematica,我有一个(可能是愚蠢的)问题: 如何在Mathematica(9)中绘制C++程序生成的D格数据? (直觉上我认为这不会太难,但对于谷歌、stackoverflow等,我找不到任何解决方案) 哪种输出格式最适合这种情况 哪个mathematica命令最好 目前,我正在尝试以列的形式给出数据,其中每行的格式如下: xcoordinate ycoordinate value 我发现原则上可以通过使用MatrixPlot[]来解决这个问题,但对于这个问题,必须以矩阵形式提供数据,这与大多数其他绘
- 哪种输出格式最适合这种情况
- 哪个mathematica命令最好
xcoordinate ycoordinate value
我发现原则上可以通过使用MatrixPlot[]来解决这个问题,但对于这个问题,必须以矩阵形式提供数据,这与大多数其他绘图程序不兼容,因此如果可能,我希望避免这种情况。我是StackOverflow新手,对答案的要求有点担心。我尽了最大努力: 从问题中给出的事实来看,我不明白为什么不简单地使用
ListPlot3D
?数据集中不需要任何特定的顺序,Mathematica将尝试对数据进行排序
首先,您可以将C++数据导出到表单
文件中x1 y1 value1
x2 y2 value2
x3 y3 value3
...
可以使用导入此格式的文件
Import["path/to/file.txt", "Table"]
然后,您将得到一个矩阵,如以下示例所示:
d1 = Flatten[Table[{x, y, Cos[Sqrt[x^2 + y^2]]}, {x, 0, 6, 0.2}, {y, 0, 6, 0.2}], 1];
d2 = RandomSample[d1]
ListPlot3D[d1]
ListPlot3D[d2]
d1
将是{x,y,z}
d2
将以无序形式显示相同的列表
这两种方法都将产生源自{0,0,1}
据我所知,
ListPlot3D
从Mathematica 8开始提供。我是StackOverflow新手,有点担心答案的要求。我尽了最大努力:
从问题中给出的事实来看,我不明白为什么不简单地使用ListPlot3D
?数据集中不需要任何特定的顺序,Mathematica将尝试对数据进行排序
首先,您可以将C++数据导出到表单
文件中x1 y1 value1
x2 y2 value2
x3 y3 value3
...
可以使用导入此格式的文件
Import["path/to/file.txt", "Table"]
然后,您将得到一个矩阵,如以下示例所示:
d1 = Flatten[Table[{x, y, Cos[Sqrt[x^2 + y^2]]}, {x, 0, 6, 0.2}, {y, 0, 6, 0.2}], 1];
d2 = RandomSample[d1]
ListPlot3D[d1]
ListPlot3D[d2]
d1
将是{x,y,z}
d2
将以无序形式显示相同的列表
这两种方法都将产生源自{0,0,1}
据我所知,
ListPlot3D
从Mathematica 8开始提供。这个问题更适合.Sry。我不知道有这样的事情存在。这个问题更适合.Sry。我不知道有这样的事情存在。