因为PolarPlot
应输入r = ... type of command。
但是y = x会导致r消失。
如何使用PolarPlot
绘制该行?
答案 0 :(得分:3)
首先,考虑Plot[]
“生成f作为x从xmin到xmax的函数的图”(我引用了 Mathematica 文档)。你不能用它来绘制满足方程x = x0的垂直线,因为后者不是x的函数:而不是单值,它在x0处有无限多的值。
类似地,PolarPlot[]
不能用于绘制穿过原点的直线,因为它的方程不是θ的函数:它在特定θ处具有无限多的值(等于Pi / 4 in案件要求),但其他地方都没有。 (嗯,也可以允许互补角度3Pi / 4。)
所以我认为使用指定的工具无法完成,缺少作弊
PolarPlot[0, {\[Theta], 0, 1},
Epilog -> Line[{Scaled[{1, 1}], Scaled[{0, 0}]}]]
答案 1 :(得分:2)
以下是 y = m x + b 形式的一般极坐标形式:
In[155]:= r /.
Solve[Eliminate[{x == r Cos[t], y == r Sin[t], y == m x + b}, {x,
y}], r]
Out[155]= {-(b/(m Cos[t] - Sin[t]))}
当y轴截距 b 为零时,解决方案消失。这是有道理的,因为这些线以恒定的角度绘制,这是有问题的,因为PolarPlot
通过改变角度来工作。
你可以通过使用 b 的非常小的值来估计这样一条线,但可能有更好的方法。
答案 2 :(得分:2)
我建议您使用新功能。
PolarParametricPlot[
{rT : {_, _} ..} | rT : {_, _},
uv : {_, _, _} ..,
opts : OptionsPattern[]
] :=
ParametricPlot[
Evaluate[# {Cos@#2, Sin@#2} & @@@ {rT}],
uv,
opts
]
用法:
PolarParametricPlot[{t, 45 Degree}, {t, -10, 10}]
答案 3 :(得分:1)
您可以使用ListPolatPlot
绘制线条:
ListPolarPlot[{{Pi/4, 5}, {5 Pi/4, 5}}, Joined -> True]