Есть ли способ использовать Pyplot invert.axis в качестве наложения? - PullRequest
0 голосов
/ 27 апреля 2020

Есть ли способ / альтернатива использованию invert.axis, если я хочу нанести на график два набора разных осевых данных?

Например: я пытаюсь добавить два набора x и y координаты на графике, но для одного из наборов я хочу поменять местами.

Я знаю, что могу использовать ax.invert_yaxis и ax.invert_xaxis (), чтобы повернуть один набор, но есть ли способ отменить ось для одного комплекта, а для другого одинаковая?

Я хочу, чтобы оба этих выхода по существу перекрывали друг друга. Я приложил два скриншота выходов от каждого

#Get coordinates for shots 

#home team coords

x_coords_h = ([float((k['X'])) * 124.5 for k in data['h']])
y_coords_h = ([float((k['Y'])) * 80 for k in data['h']])
coords_h = ([(float(k['X']) * 124.5, float(k['Y']) * 80) for k in data['h']])

#away team coords
x_coords_a = ([float((k['X'])) * 124.5 for k in data['a']])
y_coords_a = ([float((k['Y'])) * 80 for k in data['a']])
coords_a = ([(float(k['X']) * 124.5, float(k['Y']) * 80) for k in data['a']])

#plot shots

#plot home shots
ax.scatter(x_coords_h, y_coords_h, c = "blue", label = 'shots')

#plot away shots
#ax.scatter(x_coords_a, y_coords_a, c = "red", label = 'shots')


plt.ylim(0, 80)
plt.xlim(0, 120)
#plt.text(95, 5, "@Jack_Nesbitt", color="#f7f7f7", fontsize=10)
#ax.invert_yaxis()
#ax.invert_xaxis()
plt.show()
#Get coordinates for shots 

#home team coords

x_coords_h = ([float((k['X'])) * 124.5 for k in data['h']])
y_coords_h = ([float((k['Y'])) * 80 for k in data['h']])
coords_h = ([(float(k['X']) * 124.5, float(k['Y']) * 80) for k in data['h']])

#away team coords
x_coords_a = ([float((k['X'])) * 124.5 for k in data['a']])
y_coords_a = ([float((k['Y'])) * 80 for k in data['a']])
coords_a = ([(float(k['X']) * 124.5, float(k['Y']) * 80) for k in data['a']])

#plot shots

#plot home shots
#ax.scatter(x_coords_h, y_coords_h, c = "blue", label = 'shots')

#plot away shots
ax.scatter(x_coords_a, y_coords_a, c = "red", label = 'shots')


plt.ylim(0, 80)
plt.xlim(0, 120)
#plt.text(95, 5, "@Jack_Nesbitt", color="#f7f7f7", fontsize=10)
ax.invert_yaxis()
ax.invert_xaxis()
plt.show()

Вывод сценария 1:

enter image description here

Вывод сценария 2:

enter image description here

Спасибо!

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