matplotlib.parches.Arc #

clase matplotlib.parches. Arco ( xy , ancho , alto , * , ángulo = 0.0 , theta1 = 0.0 , theta2 = 360.0 , ** kwargs ) [fuente] #

Bases:Ellipse

Un arco elíptico, es decir, un segmento de una elipse.

Debido a optimizaciones internas, el arco no se puede llenar.

Parámetros :
xy (flotante, flotante)

El centro de la elipse.

flotador ancho

La longitud del eje horizontal.

flotador de altura

La longitud del eje vertical.

ángulo de flotación

Rotación de la elipse en grados (en sentido antihorario).

theta1, theta2 flotante, predeterminado: 0, 360

Ángulos inicial y final del arco en grados. Estos valores son relativos al ángulo , por ejemplo, si el ángulo = 45 y theta1 = 90, el ángulo inicial absoluto es 135. Por defecto , theta1 = 0, theta2 = 360, es decir, una elipse completa. El arco se dibuja en sentido antihorario. Los ángulos mayores o iguales a 360, o menores a 0, son representados por un ángulo equivalente en el rango [0, 360), tomando el valor de entrada mod 360.

Otros parámetros :
** Patchpropiedades de los kwargs

La mayoría Patchde las propiedades se admiten como argumentos de palabras clave, con la excepción de relleno y color de cara porque no se admite el relleno.

Propiedad

Descripción

agg_filter

una función de filtro, que toma una matriz flotante (m, n, 3) y un valor de ppp, y devuelve una matriz (m, n, 3) y dos compensaciones desde la esquina inferior izquierda de la imagen

alpha

desconocido

animated

bool

antialiasedo uno

booleano o ninguno

capstyle

CapStyleo {'trasero', 'proyectando', 'redondo'}

clip_box

Bbox

clip_on

bool

clip_path

Parchear o (Ruta, Transformar) o Ninguno

color

color

edgecoloro ce

color o ninguno

facecoloro FC

color o ninguno

figure

Figure

fill

bool

gid

calle

hatch

{'/', '\', '|', '-', '+', 'x', 'o', 'O', '.', '*'}

in_layout

bool

joinstyle

JoinStyleo {'inglete', 'redondo', 'bisel'}

label

objeto

linestyleo ls

{'-', '--', '-.', ':', '', (desplazamiento, on-off-seq), ...}

linewidtho bajo

flotante o Ninguno

mouseover

bool

path_effects

AbstractPathEffect

picker

Ninguno o bool o flotante o invocable

rasterized

bool

sketch_params

(escala: flotante, longitud: flotante, aleatoriedad: flotante)

snap

booleano o ninguno

transform

Transform

url

calle

visible

bool

zorder

flotar

dibujar ( procesador ) [fuente] #

Dibuja el arco al renderizador dado .

notas

Las elipses normalmente se dibujan usando una aproximación que usa ocho splines Bézier cúbicos. El error de esta aproximación es 1.89818e-6, según esta fuente no verificada:

Lancaster, Don. Aproximación de un círculo o una elipse usando cuatro splines cúbicas Bezier.

https://www.tinaja.com/glib/ellipse4.pdf

Hay un caso de uso en el que se deben dibujar elipses muy grandes con una precisión muy alta, y es demasiado costoso renderizar la elipse completa con suficientes segmentos (ya sean splines o segmentos de línea). Por lo tanto, en el caso de que cualquiera de los radios de la elipse sea lo suficientemente grande como para que el error de la aproximación de la spline sea visible (más de un píxel desplazado del ideal), se utiliza una técnica diferente.

En ese caso, solo se dibujan las partes visibles de la elipse, y cada arco visible utiliza un número fijo de segmentos de spline (8). El algoritmo procede como sigue:

  1. Se ubican los puntos donde la elipse se cruza con los ejes (o la figura) del cuadro delimitador. (Esto se hace realizando una transformación inversa en el bbox de modo que sea relativo al círculo unitario; esto hace que el cálculo de la intersección sea mucho más fácil que hacer la intersección de elipse girada directamente).

    Esto utiliza el algoritmo de "línea que se cruza con un círculo" de:

    Vicente, Juan. Geometría para gráficos por computadora: fórmulas, ejemplos y pruebas. Londres: Springer-Verlag, 2005.

  2. Se calculan los ángulos de cada uno de los puntos de intersección.

  3. Procediendo en sentido contrario a las agujas del reloj comenzando en la dirección x positiva, cada uno de los segmentos de arco visibles entre los pares de vértices se dibuja utilizando la técnica de aproximación de arco de Bezier implementada en Path.arc.

set ( * , agg_filter=<UNSET> , alpha=<UNSET> , angle=<UNSET> , animation =<UNSET> , antialiased=<UNSET> , capstyle=<UNSET> , center=<UNSET> , clip_box=<UNSET > , clip_on=<UNSET> , clip_path=<UNSET> , color=<UNSET> , edgecolor=<UNSET> , facecolor=<UNSET> , fill=<UNSET> , gid=<UNSET> , hatch=<UNSET> , altura=<DESCONFIGURADO> ,in_layout=<DESCONFIGURAR> ,joinstyle=<UNSET> , label=<UNSET> , linestyle=<UNSET> , linewidth=<UNSET> , mouseover=<UNSET> , path_effects=<UNSET> , picker=<UNSET> , rasterized=<UNSET> , sketch_params= <UNSET> , snap=<UNSET> , transform=<UNSET> , url=<UNSET> , visible=<UNSET> , width=<UNSET> , zorder=<UNSET> ) [fuente] #

Establece varias propiedades a la vez.

Las propiedades admitidas son

Propiedad

Descripción

agg_filter

una función de filtro, que toma una matriz flotante (m, n, 3) y un valor de ppp, y devuelve una matriz (m, n, 3) y dos compensaciones desde la esquina inferior izquierda de la imagen

alpha

escalar o ninguno

angle

flotar

animated

bool

antialiasedo uno

booleano o ninguno

capstyle

CapStyleo {'trasero', 'proyectando', 'redondo'}

center

(flotar, flotar)

clip_box

Bbox

clip_on

bool

clip_path

Parchear o (Ruta, Transformar) o Ninguno

color

color

edgecoloro ce

color o ninguno

facecoloro FC

color o ninguno

figure

Figure

fill

bool

gid

calle

hatch

{'/', '\', '|', '-', '+', 'x', 'o', 'O', '.', '*'}

height

flotar

in_layout

bool

joinstyle

JoinStyleo {'inglete', 'redondo', 'bisel'}

label

objeto

linestyleo ls

{'-', '--', '-.', ':', '', (desplazamiento, on-off-seq), ...}

linewidtho bajo

flotante o Ninguno

mouseover

bool

path_effects

AbstractPathEffect

picker

Ninguno o bool o flotante o invocable

rasterized

bool

sketch_params

(escala: flotante, longitud: flotante, aleatoriedad: flotante)

snap

booleano o ninguno

transform

Transform

url

calle

visible

bool

width

flotar

zorder

flotar

Ejemplos usando matplotlib.patches.Arc#

Etiqueta de ángulo invariable de escala

Etiqueta de ángulo invariable de escala

Etiqueta de ángulo invariable de escala
Elipse con unidades

Elipse con unidades

Elipse con unidades