将中的圆坐标转换为gnuplot中的度值

将中的圆坐标转换为gnuplot中的度值,gnuplot,Gnuplot,我有一个包含3列的数据文件:前2列是圆的坐标,第3列是圆的坐标。这些都是结果。如何将该x-y坐标转换为度范围(x轴范围:0-360)。我想在XY图中显示结果。我不想在我的数据文件中再创建一列,我想直接用gnuplot转换这些值。这是可能的吗?只要记住你的高中几何以及如何将笛卡尔坐标转换为极坐标即可。假设你有一个笛卡尔坐标(x,y)。在该点和原点之间绘制一条线。这条线与x轴之间的角度θ与tanθ=y/x相关,距离原点的距离r为sqrt(x2+y2) 所以你的角度θ就是y/x的反正切。在gnuplo

我有一个包含3列的数据文件:前2列是圆的坐标,第3列是圆的坐标。这些都是结果。如何将该x-y坐标转换为度范围(x轴范围:0-360)。我想在XY图中显示结果。我不想在我的数据文件中再创建一列,我想直接用gnuplot转换这些值。这是可能的吗?

只要记住你的高中几何以及如何将笛卡尔坐标转换为极坐标即可。假设你有一个笛卡尔坐标(x,y)。在该点和原点之间绘制一条线。这条线与x轴之间的角度θ与tanθ=y/x相关,距离原点的距离r为sqrt(x2+y2)

所以你的角度θ就是y/x的反正切。在gnuplot中,这是
atan()
函数。我会这样写:

set angles degrees
plot 'infile.dat' using (atan($2/$1)):3 with points
其中第3列是“结果”(粗糙度),第1列和第2列是笛卡尔坐标。它使用水平打印轴的计算θ值和垂直打印轴的粗糙度

使用
set angles
命令,可以将
atan()
使用的单位设置为度或弧度。由于您指定的范围为0-360,因此它是
设置角度角度


它将按点在文件中出现的顺序打印这些点。请注意,根据数据文件中点的顺序,此计算后的点顺序可能不再是直观的顺序,因此此示例将
与点一起使用

请发布一些示例数据并解释您尝试执行的操作。事实上,这很难理解。坐标是圆柱体表面的笛卡尔坐标。结果值为表面粗糙度。我想在不同的垂直部分显示从0到360度的粗糙度。Y轴=结果值,x轴=圆周度(从0到360)