radar chart demo显示了如何制作雷达图。结果如下:
在这里,外脊柱是多边形的形状如所需。但是内部网格线是圆形的。
所以现在的问题是如何使网格线与脊椎形状相同。
这可以通过重写draw方法并将gridlines的path interpolation step变量设置为RadarAxes类的变量数来完成。gridlines = self.yaxis.get_gridlines()
for gl in gridlines:
gl.get_path()._interpolation_steps = num_vars
完整示例:import numpy as np
import matplotlib.pyplot as plt
from matplotlib.patches import Circle, RegularPolygon
from matplotlib.path import Path
from matplotlib.projections.polar import PolarAxes
from matplotlib.projections import register_projection
from matplotlib.spines import Spine
from matplotlib.transforms import Affine2D
def radar_factory(num_vars, frame='circle'):
"""Create a radar chart with `num_vars` axes.
This function creates a RadarAx