如何在一张图中绘制极坐标和笛卡尔子图

问题描述 投票:0回答:1

我想生成一个半笛卡尔半极性的图。例如高斯曲线的另一侧为极坐标格式,另一半为笛卡尔格式。最好的方法是什么?

<<

我曾尝试共享y轴,但未成功为一种绘图采用两种不同类型的格式。

import matplotlib.pyplot as plt import numpy as np theta = np.linspace(0,(np.pi)/2) r = np.sin(theta) fig = plt.figure() ax = fig.add_subplot(211, polar=True) c = ax.scatter(theta, r, c=r, s=5, cmap='hsv', alpha=0.85) ax.set_thetamin(0) ax.set_thetamax(90) ax1=fig.add_subplot(212) #, sharey='ax') fig, (c, d) = plt.subplots(ncols=2,sharey=True) d=ax1.scatter(theta,r) plt.show()

我想生成一个半笛卡尔半极性的图。例如高斯曲线的另一侧为极坐标格式,另一半为笛卡尔格式。最好的方法是什么?我已经尝试过...
matplotlib subplot polar-coordinates cartesian
1个回答
0
投票
import matplotlib.pyplot as plt import numpy as np theta = np.linspace(0,(np.pi)/2) r = np.sin(theta) fig = plt.figure(figsize=(6.4, 3.25)) fig.subplots_adjust(wspace=0) ax1 = fig.add_subplot(121) ax1.grid() ax2 = fig.add_subplot(122, polar=True) ax2.set_thetamin(0) ax2.set_thetamax(90) ax1.set_ylim(0, 1.05) ax2.set_ylim(0, 1.05) sc1 = ax1.scatter(np.rad2deg(theta), r, c=r, s=5, cmap='hsv', alpha=0.85) sc2 = ax2.scatter(theta,r, c=r, s=5, cmap='hsv', alpha=0.85) plt.show()
© www.soinside.com 2019 - 2024. All rights reserved.