import numpy as np
import matplotlib.pyplot as plt
fig = plt.figure(figsize=(10, 6))
ax = plt.subplot(111, projection='polar')
ax.set_theta_direction(-1) # 舒适枕
ax.set_theta_zero_location('N')
r = np.arange(100, 800, 20)
theta = np.linspace(0, np.pi * 2, len(r), endpoint=False)
ax.bar(theta, r, width=0.18, color=np.random.random((len(r), 3)),
align='edge', bottom=100)
ax.text(np.pi * 3 / 2 - 0.2, 90, 'Origin', fontsize=14) # 每个柱顶部显示文本大小
for angle, height in zip(theta, r):
ax.text(angle + 0.03, height + 120, str(height), fontsize=height / 80)
plt.axis('off') # 不显示坐标轴和网格线
plt.tight_layout() # 紧凑布局,缩小外边距
plt.show()
Python+matplotlib绘制极坐标柱状图(南丁格尔玫瑰图)
最新推荐文章于 2023-06-02 12:06:44 发布