matplotlib.axes.Axes.quiver #
- Machados. quiver ( * args , data = None , ** kwargs ) [fonte] #
Traçar um campo 2D de setas.
Assinatura de chamada:
quiver([X, Y], U, V, [C], **kwargs)
X , Y definem os locais das setas, U , V definem as direções das setas e C opcionalmente define a cor.
Comprimento da flecha
As configurações padrão dimensionam automaticamente o comprimento das setas para um tamanho razoável. Para alterar esse comportamento, consulte os parâmetros scale e scale_units .
Forma de seta
A forma da seta é determinada pela largura , largura da cabeça , comprimento da cabeça e comprimento do eixo da cabeça . Veja as notas abaixo.
estilo de seta
Cada seta é representada internamente por um polígono preenchido com uma largura de linha de borda padrão de 0. Como resultado, uma seta é uma área preenchida, não uma linha com uma cabeça, e
PolyCollection
propriedades como linewidth , edgecolor , facecolor , etc. agem de acordo.- Parâmetros :
- X, Y 1D ou 2D tipo matriz, opcional
As coordenadas x e y das localizações das setas.
Se não forem fornecidos, eles serão gerados como uma grade de malha inteira uniforme com base nas dimensões de U e V .
Se X e Y são 1D, mas U , V são 2D, X , Y são expandidos para 2D usando . Nesse caso, e deve corresponder às dimensões de coluna e linha de U e V .
X, Y = np.meshgrid(X, Y)
len(X)
len(Y)
- U, V 1D ou 2D tipo matriz
Os componentes de direção x e y dos vetores de seta. A interpretação desses componentes (em dados ou no espaço da tela) depende dos ângulos .
U e V devem ter o mesmo número de elementos, correspondendo ao número de localizações de seta em X , Y . U e V podem ser mascarados. Locais mascarados em qualquer um dos U , V e C não serão desenhados.
- C 1D ou 2D tipo array, opcional
Dados numéricos que definem as cores das setas por mapeamento de cores via norma e cmap .
Isso não suporta cores explícitas. Se você quiser definir as cores diretamente, use a cor em vez disso. O tamanho de C deve corresponder ao número de localizações de seta.
- ângulos {'uv', 'xy'} ou tipo matriz, padrão: 'uv'
Método para determinar o ângulo das flechas.
'uv': Direção da seta nas coordenadas da tela. Use isso se as setas simbolizarem uma quantidade que não seja baseada nas coordenadas de dados X , Y.
Se U == V , a orientação da seta no gráfico é de 45 graus no sentido anti-horário a partir do eixo horizontal (positivo para a direita).
'xy': Direção da seta em coordenadas de dados, ou seja, as setas apontam de (x, y) para (x+u, y+v). Use isto, por exemplo, para plotar um campo de gradiente.
Ângulos arbitrários podem ser especificados explicitamente como uma matriz de valores em graus, no sentido anti-horário do eixo horizontal.
Neste caso , U , V é usado apenas para determinar o comprimento das setas.
Observação: inverter um eixo de dados inverterá as setas apenas com
angles='xy'
.- pivô {'cauda', 'meio', 'meio', 'ponta'}, padrão: 'cauda'
A parte da seta que está ancorada na grade X , Y. A seta gira em torno deste ponto.
'meio' é sinônimo de 'meio'.
- flutuador de escala , opcional
Dimensiona o comprimento da seta inversamente.
Número de unidades de dados por unidade de comprimento de seta, por exemplo, m/s por largura de plotagem; um parâmetro de escala menor torna a seta mais longa. O padrão é Nenhum .
Se None , um algoritmo simples de escalonamento automático é usado, com base no comprimento médio do vetor e no número de vetores. A unidade de comprimento da seta é fornecida pelo parâmetro scale_units .
- scale_units {'largura', 'altura', 'pontos', 'polegadas', 'x', 'y', 'xy'}, opcional
Se a escala kwarg for None , a unidade de comprimento da seta. O padrão é Nenhum .
por exemplo , scale_units é 'polegadas', escala é 2,0 e , então o vetor terá 0,5 polegadas de comprimento.
(u, v) = (1, 0)
Se scale_units for 'width' ou 'height', então o vetor terá metade da largura/altura dos eixos.
Se scale_units for 'x', o vetor terá 0,5 unidades do eixo x. Para plotar vetores no plano xy, com u e v tendo as mesmas unidades que x e y, use .
angles='xy', scale_units='xy', scale=1
- unidades {'largura', 'altura', 'pontos', 'polegadas', 'x', 'y', 'xy'}, padrão: 'largura'
Afeta o tamanho da seta (exceto o comprimento). Em particular, a largura do eixo é medida em múltiplos desta unidade.
Os valores suportados são:
'width', 'height': A largura ou altura dos eixos.
'pontos', 'polegadas': Pixels ou polegadas com base na figura dpi.
'x', 'y', 'xy': X , Y ou\(\sqrt{X^2 + Y^2}\)em unidades de dados.
A tabela a seguir resume como esses valores afetam o tamanho da seta visível sob zoom e alterações no tamanho da figura:
unidades
ampliação
mudança de tamanho da figura
'x', 'y', 'xy'
escalas de tamanho de seta
'largura altura'
escalas de tamanho de seta
'pontos', 'polegadas'
- flutuador de largura , opcional
Largura do eixo em unidades de seta. Todos os parâmetros da cabeça são relativos à largura .
O padrão depende da escolha das unidades acima e do número de vetores; um valor inicial típico é cerca de 0,005 vezes a largura do gráfico.
- headwidth float, padrão: 3
Largura da cabeça como múltiplo da largura do eixo . Veja as notas abaixo.
- altura da cabeça flutuante, padrão: 5
Comprimento da cabeça como múltiplo da largura do eixo . Veja as notas abaixo.
- headaxislength float, padrão: 4,5
Comprimento da cabeça na interseção do eixo como múltiplo da largura do eixo . Veja as notas abaixo.
- flutuante do eixo min , padrão: 1
Comprimento abaixo do qual a seta escala, em unidades de comprimento da cabeça. Não defina para menos de 1, ou as setas pequenas ficarão horríveis!
- flutuador de comprimento mínimo , padrão: 1
Comprimento mínimo como múltiplo da largura do eixo; se o comprimento de uma seta for menor que isso, desenhe um ponto (hexágono) desse diâmetro.
- cor da cor ou sequência de cores, opcional
Cor(es) explícita(s) para as setas. Se C foi definido, a cor não tem efeito.
Este é um sinônimo para o parâmetro facecolor .
PolyCollection
- Devoluções :
- Outros Parâmetros :
- objeto indexável de dados , opcional
Se fornecido, todos os parâmetros também aceitam uma string
s
, que é interpretada comodata[s]
(a menos que isso gere uma exceção).- **
PolyCollection
propriedades kwargs, opcional Todos os outros argumentos de palavras-chave são passados para
PolyCollection
:Propriedade
Descrição
uma função de filtro, que usa uma matriz flutuante (m, n, 3) e um valor de dpi e retorna uma matriz (m, n, 3) e dois deslocamentos do canto inferior esquerdo da imagem
tipo array ou escalar ou Nenhum
bool
antialiased
ou aa ou antialiasedsbool ou lista de bools
tipo array ou nenhum
CapStyle
ou {'bunda', 'projetando', 'redondo'}(vmin: flutuante, vmax: flutuante)
bool
Patch ou (Caminho, Transformação) ou Nenhum
Colormap
ou str ou Nenhumcor ou lista de tuplas rgba
edgecolor
ou ec ou cores de bordacor ou lista de cores ou 'face'
facecolor
ou facecolors ou fccor ou lista de cores
str
{'/', '\', '|', '-', '+', 'x', 'o', 'O', '.', '*'}
bool
JoinStyle
ou {'esquadria', 'redondo', 'chanfrado'}objeto
linestyle
ou traços ou estilos de linha ou lsstr ou tupla ou lista dos mesmos
linewidth
ou larguras de linha ou lwflutuador ou lista de flutuadores
bool
Normalize
ou str ou Nenhumoffset_transform
ou transOffsetdesconhecido
(N, 2) ou (2,) tipo matriz
lista de tipo array
None ou bool ou float ou callable
desconhecido
bool
sizes
ndarray ou nenhum
(escala: flutuante, comprimento: flutuante, aleatoriedade: flutuante)
bool ou nenhum
str
lista de str ou None
lista de tipo array
desconhecido
bool
flutuador
Veja também
Axes.quiverkey
Adicione uma chave a um gráfico de aljava.
Notas
Forma de seta
A seta é desenhada como um polígono usando os nós conforme mostrado abaixo. Os valores headwidth , headlength e headaxislength estão em unidades de largura .
Os padrões fornecem uma seta levemente inclinada para trás. Aqui estão algumas orientações sobre como obter outras formas de cabeça:
Para tornar a cabeça um triângulo, faça o comprimento do eixo da cabeça igual ao comprimento da cabeça .
Para tornar a seta mais pontiaguda, reduza a largura da cabeça ou aumente o comprimento da cabeça e o comprimento do eixo da cabeça .
Para tornar a cabeça menor em relação ao eixo, reduza proporcionalmente todos os parâmetros da cabeça.
Para remover o cabeçote completamente, defina todos os parâmetros do cabeçote como 0.
Para obter uma cabeça em forma de diamante, torne o comprimento do eixo da cabeça maior que o comprimento da cabeça .
Aviso: Para headaxislength < ( headlength / headwidth ), os nós "headaxis" (ou seja, aqueles que conectam a cabeça com o eixo) se projetarão para fora da cabeça na direção frontal, de modo que a ponta da seta pareça quebrada.
Exemplos usando matplotlib.axes.Axes.quiver
#
Funções avançadas de quiver e quiverkey