Matplotlib绘制两个图形:一个是极坐标图,一个是笛卡尔坐标图。

8

我想绘制两个图表(水平方向),一个是极坐标图,另一个是笛卡尔坐标图。我有以下代码可以生成两个笛卡尔坐标图:

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()

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

1个回答

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()

使用plt.subplot()和plt.subplots()有什么区别? - ATP
@Julian subplots 可以创建一个轴对象数组,而 subplot 一次只创建一个子图,在网格中指定的位置上,您可以在此处找到详细的解释 here - rinkert

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接