mpl_toolkits.axisartist.angle_helper.ExtremeFinderCycle#

class mpl_toolkits.axisartist.angle_helper.ExtremeFinderCycle(nx, ny, lon_cycle=360.0, lat_cycle=None, lon_minmax=None, lat_minmax=(-90, 90))[source]#

基类:ExtremeFinderSimple

此子类处理一个或两个坐标应取模 360,或被限制在特定范围内的情形。

参数:
nx, nyint

每个方向的样本数。

lon_cycle, lat_cycle360 或 None

如果不是 None,对应方向上的值将取模 lon_cyclelat_cycle;理论上这可以是任何数字,但实现实际上假定它是 360(如果不是 None);其他值将产生无意义的结果。

这是通过“展开”变换后的网格坐标来实现的,使跳跃小于半个周期;然后将跨度标准化为不超过一个完整周期。

例如,如果值在 [0, 2] 和 [358, 360] 区间的并集中(通常是模 360 测量的角度),则第二个区间中的值会被归一化为 [-2, 0],而不是让值现在覆盖 [-2, 2]。如果值在 [5, 1000] 的范围内,则会归一化为 [5, 365]。

lon_minmax, lat_minmax(float, float) 或 None

如果不是 None,计算出的边界框将裁剪到对应方向上的给定范围。

__call__(transform_xy, x1, y1, x2, y2)[source]#

通过将 transform_xy 应用于由 (x1, y1, x2, y2) 界定的框,计算所得边界框的近似值。

预期用途是使 (x1, y1, x2, y2) 处于轴坐标中,并使 transform_xy 为从轴坐标到数据坐标的变换;此方法然后返回跨越实际轴的数据坐标范围。

计算方法是:在 (x1, y1, x2, y2) 框中均匀采样 nx * ny 个点,并找到具有极端坐标的结果点;然后添加一些填充以考虑有限采样。

由于每个采样步骤覆盖 1/nx1/ny 的相对范围,因此填充是通过将极端坐标所覆盖的范围扩展这些分数来计算的。

使用 mpl_toolkits.axisartist.angle_helper.ExtremeFinderCycle 的示例#

轴方向演示

轴方向演示

曲线网格演示

曲线网格演示

浮动轴演示

浮动轴演示

简单轴填充

简单轴填充