Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/135.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 从c+绘制二维晶格数据+;在数学中_C++_Plot_Wolfram Mathematica - Fatal编程技术网

C++ 从c+绘制二维晶格数据+;在数学中

C++ 从c+绘制二维晶格数据+;在数学中,c++,plot,wolfram-mathematica,C++,Plot,Wolfram Mathematica,我有一个(可能是愚蠢的)问题: 如何在Mathematica(9)中绘制C++程序生成的D格数据? (直觉上我认为这不会太难,但对于谷歌、stackoverflow等,我找不到任何解决方案) 哪种输出格式最适合这种情况 哪个mathematica命令最好 目前,我正在尝试以列的形式给出数据,其中每行的格式如下: xcoordinate ycoordinate value 我发现原则上可以通过使用MatrixPlot[]来解决这个问题,但对于这个问题,必须以矩阵形式提供数据,这与大多数其他绘

我有一个(可能是愚蠢的)问题:

如何在Mathematica(9)中绘制C++程序生成的D格数据? (直觉上我认为这不会太难,但对于谷歌、stackoverflow等,我找不到任何解决方案)

  • 哪种输出格式最适合这种情况
  • 哪个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。我不知道有这样的事情存在。