如何在R中绘制极坐标?

如何在R中绘制极坐标?,r,polar-coordinates,parametric-equations,R,Polar Coordinates,Parametric Equations,假设(x(t),y(t))有极坐标(√t、 2πt)。t的图(x(t),y(t))∈[0,10] 在R中没有合适的函数用极坐标绘图。我尝试了正常的绘图,给出x=√t&y=2πt。 但结果图并不像预期的那个样 我从“使用r的科学编程和模拟简介”中得到了这个问题,这本书告诉我,情节应该是螺旋式的。制作一个序列: t <- seq(0,10, len=100) # the parametric index # Then convert ( sqrt(t), 2*pi*t ) to rectil

假设(x(t),y(t))有极坐标(√t、 2πt)。t的图(x(t),y(t))∈[0,10]

在R中没有合适的函数用极坐标绘图。我尝试了正常的绘图,给出x=√t&y=2πt。 但结果图并不像预期的那个样

我从“使用r的科学编程和模拟简介”中得到了这个问题,这本书告诉我,情节应该是螺旋式的。

制作一个序列:

t <- seq(0,10, len=100)  # the parametric index
# Then convert ( sqrt(t), 2*pi*t ) to rectilinear coordinates
x = sqrt(t)* cos(2*pi*t) 
y = sqrt(t)* sin(2*pi*t)
png("plot1.png");plot(x,y);dev.off()
png("plot2.png");plot(x,y, type="b");dev.off()

如前一条评论中所述,R可以使用极坐标绘图。plotrix软件包有一个名为polar.plot的函数,用于执行此操作。极坐标由长度和角度定义。此函数可以采用一系列长度和一系列角度,以极坐标进行绘图。例如,要制作一个螺旋,请执行以下操作:

library(plotrix)
plt.lns <- seq(1, 100, length=500)
angles <- seq(0, 5*360, length=500)%%360
polar.plot(plt.lns, polar.pos=angles, labels="", rp.type = "polygon")
库(plotrix)

plt.lns一个值得尝试的选项,它是一个包

library(plotly)

p <- plot_ly(plotly::mic, r = ~r, t = ~t, color = ~nms, alpha = 0.5, type = "scatter")

layout(p, title = "Mic Patterns", orientation = -90)
library(plotly)

参见:“参数方程”的标签是我能找到的最接近于本文所阐述的数学概念的标签。第一项通常在极坐标中标记为“r”,即半径,第二项通常标记为“θ”,即水平向量向右的角度(以弧度为单位)。请注意,螺旋的连续循环之间的距离正在减小。这是由于sqrt函数应用于径向尺寸。你刚才画的(t,2*pi*t)空间会保持不变。(更像蜘蛛网。)这本书关于R没有极坐标图的说法实际上并不正确。包“plotrix”具有
polar.plot
和包“ggplot2”具有
coord\u polar