Определить размер сетки эллипса - PullRequest
0 голосов
/ 16 мая 2018

Мне нужно создать сюжет эллипса. Мой код указан ниже: -

import numpy as np
import pandas as pd
import math as m
import matplotlib.patches as patches
import matplotlib.pyplot as plt
x1=6.5 #Approach distane measurement point
y1=0.45 #Lateral distance measurement point
Nx=np.linspace(80,60,10)
Ny=np.linspace(80,60,10)
c=20
a=(10**(Nx/c))
b=(10**(86/20))
x=x1*(a/b) #semi major axis
Final_calculation=pd.DataFrame(x,columns = ["Distance_xaxis"])
a=(10**(Ny/c))
b=(10**(83/20))
y=y1*(a/b) #semi mionr axis
Final_calculation['Distance_yaxis']=y
Final_calculation['Sound unit decibel']=Nx
fig = plt.figure()
ax = fig.add_subplot(111, aspect='auto')
e1 = patches.Ellipse((0,0),x[0],y[0],linewidth=2, fill=False, zorder=2)
ax.add_patch(e1)

но в питоне отображаются значения осей x и y только до 1. Как я могу увеличить размер сетки? as shown in figure.

1 Ответ

0 голосов
/ 16 мая 2018

Вы можете включить автоматическое масштабирование обеих осей (вместо увеличения пределов осей вручную, что является опцией), используя ax.autoscale:

ax.autoscale(True)

Ваш код становится

x1=6.5 #Approach distane measurement point
y1=0.45 #Lateral distance measurement point
Nx=np.linspace(80,60,10)
Ny=np.linspace(80,60,10)
c=20
a=(10**(Nx/c))
b=(10**(86/20))
x=x1*(a/b) #semi major axis
Final_calculation=pd.DataFrame(x,columns = ["Distance_xaxis"])
a=(10**(Ny/c))
b=(10**(83/20))
y=y1*(a/b) #semi mionr axis
Final_calculation['Distance_yaxis']=y
Final_calculation['Sound unit decibel']=Nx
fig = plt.figure()
ax = fig.add_subplot(111, aspect='auto')
e1 = patches.Ellipse((0,0),x[0],y[0],linewidth=2, fill=False, zorder=2)
ax.add_patch(e1)
ax.autoscale(True)
plt.show()

enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...