Curva de demostración Cuadrícula lineal2 #

Cuadrícula personalizada y ticklines.

Este ejemplo demuestra cómo utilizar GridHelperCurveLinear para definir cuadrículas y líneas de marca personalizadas mediante la aplicación de una transformación en la cuadrícula. Como escaparate en la trama, se muestra una matriz de 5x5 en los ejes.

curva de demostracióncuadrícula lineal2
import numpy as np
import matplotlib.pyplot as plt

from mpl_toolkits.axisartist.grid_helper_curvelinear import (
    GridHelperCurveLinear)
from mpl_toolkits.axisartist.grid_finder import (
    ExtremeFinderSimple, MaxNLocator)
from mpl_toolkits.axisartist.axislines import Axes


def curvelinear_test1(fig):
    """Grid for custom transform."""

    def tr(x, y):
        return np.sign(x)*abs(x)**.5, y

    def inv_tr(x, y):
        return np.sign(x)*x**2, y

    grid_helper = GridHelperCurveLinear(
        (tr, inv_tr),
        extreme_finder=ExtremeFinderSimple(20, 20),
        # better tick density
        grid_locator1=MaxNLocator(nbins=6), grid_locator2=MaxNLocator(nbins=6))

    ax1 = fig.add_subplot(axes_class=Axes, grid_helper=grid_helper)
    # ax1 will have a ticks and gridlines defined by the given
    # transform (+ transData of the Axes). Note that the transform of the Axes
    # itself (i.e., transData) is not affected by the given transform.

    ax1.imshow(np.arange(25).reshape(5, 5),
               vmax=50, cmap=plt.cm.gray_r, origin="lower")


if __name__ == "__main__":
    fig = plt.figure(figsize=(7, 4))
    curvelinear_test1(fig)
    plt.show()

Galería generada por Sphinx-Gallery