回答问题

对于下面显示的 matplotlib 绘制的极坐标图,我对以下两件事感兴趣

  1. 如何在 r 轴上为极坐标图创建次要刻度?

  2. 如何将 r 标签远离 r 刻度,如图所示,一些 r 刻度与轴接触。

在此处输入图像描述

Answers

极坐标图没有小刻度或大刻度。所以我认为你需要通过绘制小线段来手动创建小刻度。

例如:

import numpy as np
import matplotlib.pyplot as plt

r = np.arange(0, 2, 0.01)
theta = 2 * np.pi * r

ax = plt.subplot(111, projection='polar')
ax.plot(theta, r)
ax.set_rmax(2)
ax.margins(y=0)
ax.set_rticks([0.5, 1, 1.5, 2])  # less radial ticks
ax.set_rlabel_position(120)  # get radial labels away from plotted line

ax.grid(True)

tick = [ax.get_rmax(),ax.get_rmax()*0.97]
for t  in np.deg2rad(np.arange(0,360,5)):
    ax.plot([t,t], tick, lw=0.72, color="k")

ax.set_title("A line plot on a polar axis", va='bottom')
plt.show()

在此处输入图像描述

Logo

学AI,认准AI Studio!GPU算力,限时免费领,邀请好友解锁更多惊喜福利 >>>

更多推荐