Matplotlib 绘制 2 个图表:1 个极坐标图和 1 个笛卡尔坐标图

Jul*_*ian 8 python matplotlib

我想绘制 2 个图表(水平),我希望一个是极坐标图,另一个是笛卡尔图。我有以下生成 2 个笛卡尔图的代码:

x = [1,2,3]
y = [1,2,3]
a = [2,3,4]
b = [5,7,5]

fig, (ax1,ax2) = plt.subplots(ncols = 2)
ax1.scatter(x,y)
ax2.scatter(a,b)
plt.show()
Run Code Online (Sandbox Code Playgroud)

请注意,这些只是我选择的随机点。我如何指定我想要的 xy 图处于极坐标?

rin*_*ert 7

不幸的是,无法将现有轴上的投影更改为极坐标,但您可以这样做

import matplotlib.pyplot as plt

x = [1,2,3]
y = [1,2,3]
a = [2,3,4]
b = [5,7,5]

fig = plt.figure()
ax1 = plt.subplot(121)
ax2 = plt.subplot(122, projection='polar')

ax1.scatter(x,y)
ax2.scatter(a,b)
plt.show()
Run Code Online (Sandbox Code Playgroud)