Desejo desenhar linhas em um gráfico quadrado.
As escalas de x-axis
e y-axis
devem ser as mesmas.
por exemplo, x varia de 0 a 10 e está 10 cm na tela. y também deve variar de 0 a 10 e também deve ter 10 cm.
A forma quadrada tem que ser mantida, mesmo se eu mexer com o tamanho da janela.
Atualmente, meu gráfico é dimensionado junto com o tamanho da janela.
Como posso conseguir isso?
ATUALIZAR:
Tentei o seguinte, mas não funcionou.
plt.xlim(-3, 3)
plt.ylim(-3, 3)
plt.axis('equal')
python
matplotlib
Sibbs Gambling
fonte
fonte
Respostas:
Você precisa se aprofundar um pouco mais na API para fazer isso:
doc para set_aspect
fonte
plt.plot(range(5))
eplt.gca().set_aspect('equal', adjustable='box')
fazer, se não se importa? Além disso, percebo que mesmo que não o tenha feitoplt.draw()
, o enredo ainda aparecerá. Então qual é a utilidade disso?plot
é apenas ter algo para mostrar. Paraset_aspect
ler o link da documentação. Odraw
objetivo é garantir que ele seja renderizado.funciona bem para mim.
fonte
Experimente algo como:
fonte
P.axis('equal')
parece ser assimP.gca().set_aspect('equal', adjustable='datalim')
. Enquanto seadjustable='box'
, então a trama se torna quadrada.Veja a documentação em
plt.axis()
. Este:não funciona porque altera os limites do eixo para fazer os círculos parecerem circulares. O que você quer é:
Isso cria um gráfico quadrado com eixos iguais.
fonte