matplotlib / matplotlib/matplotlib

[Bug]: quiver plotting behaves bizarrely with polar plots

Aberta
#26,750 5 comentários 0 reações 0 responsáveis Ver no GitHub

Ninguém assumiu esta issue ainda.

Documentation topic: polar
Linguagem predominante
Python
Estrelas
23.2k
Forks
8.5k
Merge médio
1d 6h
PRs com merge (30d)
66

Descrição

Bug summary

There is no documentation, as far as I can tell, explaining how quiver should behave with polar plots, and using pyplot.quiver with a polar plot results in odd plotting behaviour.

Code for reproduction
import numpy as np
from matplotlib import pyplot as plt

fig, ax = plt.subplots(subplot_kw={"polar": True})

longitude = np.arange(5, 365, 10)
colatitude = 90 - np.ones_like(longitude) * 60

sample_x = np.ones_like(longitude)     # Northward
sample_y = np.ones_like(longitude)     # Eastward

q = ax.quiver(np.radians(longitude), colatitude, sample_x, sample_y, angles="xy")
Actual outcome

Unknown-2

Expected outcome

I would expect the code to plot arrows which were vectors pointing all pointing northeast; i.e., I expect sample_x to be defined as the northward (poleward) vector and sample y to be defined as the eastward (azimuthal) vector.

Additional information

No response

Operating system

macOS Ventura 13.5

Matplotlib Version

3.7.1

Matplotlib Backend

Installed osx event loop hook. MacOSX

Python version

3.10.11

Jupyter version

4.0.1

Installation

conda

Guia de contribuição

Abrir o guia de contribuição

Primeiros passos

  1. Leia a issue inteira e depois o guia de contribuição do projeto.
  2. Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
  3. Faça um fork do repositório e trabalhe em uma branch.
  4. Abra um pull request que referencie o número da issue.

Direção de pesquisa

Comece executando a reprodução fornecida com matplotlib.pyplot.quiver em um Axes polar. Rastreie como as coordenadas polares e os vetores com angles="xy" são interpretados e, em seguida, verifique se as setas resultantes correspondem às componentes norte e leste solicitadas. Considera-se concluído quando o comportamento for corrigido ou claramente documentado, com uma verificação de regressão para este exemplo.

Escrita pelo modelo de indexação a partir do texto da issue.

Avaliação

Stack de tecnologia
python
Domínio
data-visualization
Tipo de issue
Bug
Dificuldade
4/5
Tempo estimado
3-5 dias
Status de atividade
Estagnada
Clareza
Razoavelmente clara
Facilidade para iniciantes
38/100

Receba novas issues na sua caixa de entrada

Um resumo curto de issues do GitHub para quem está começando.