我想创建一个 NFL 场图,然后在其上放置一个散点图。这是我的字段代码(只需复制粘贴所有这些。这不是我的问题所在):
import matplotlib.pyplot as plt
import pylab as pl
# Create figure
fig, ax = pl.subplots(figsize=(15,10))
# Set field dimensions
plt.xlim(0, 120) # Field length including endzones
plt.ylim(0, 53.3) # field width
# Set field color green
ax.set_facecolor('#79af75')
ax.set_alpha(0.5)
# Print lines
for i in range(0, 120, 10):
plt.axvline(i, color='white', linewidth=3, alpha=0.4, zorder=1)
if i == 10 or i == 110: # Make endzone lines
plt.axvline(i, color='white', linewidth=5, alpha=0.4, zorder=1)
# Paint numbers
yds_from_sideline = 12
for i in range(10, 50, 10):
plt.text(i+10, 53.3-yds_from_sideline, str(i), color='white', fontsize=20, verticalalignment='bottom', horizontalalignment='center', rotation=180)
plt.text(110-i, 53.3-yds_from_sideline, str(i), color='white', fontsize=20, verticalalignment='bottom', horizontalalignment='center', rotation=180)
plt.text(i+10, yds_from_sideline, str(i), color='white', fontsize=20, verticalalignment='bottom', horizontalalignment='center')
plt.text(110-i, yds_from_sideline, str(i), color='white', fontsize=20, verticalalignment='bottom', horizontalalignment='center')
# Paint 50 yard line numbers
plt.text(60, 53.3-yds_from_sideline, str(50), color='white', fontsize=20, verticalalignment='bottom', horizontalalignment='center', rotation=180)
plt.text(60, yds_from_sideline, str(50), color='white', fontsize=20, verticalalignment='bottom', horizontalalignment='center')
# Print something in the endzones
plt.text(5, 26.5, 'Vikings', color='#4F2683', fontsize=30, verticalalignment='center', horizontalalignment='center', rotation=90)
plt.text(115, 26.5, 'Opponent', color='black', fontsize=30, verticalalignment='center', horizontalalignment='center', rotation=270)
# Fix the aspect ratio (optional)
plt.gca().set_aspect(1)
# Display the figure
plt.show()
我试图将以下代码添加到现场图,但没有成功。
万千封印
相关分类