develope_kkyu

[Python] ploty를 이용해 내셔널리그 골든글러브 최종 후보 3인 수비 지표 그래프 만들기 본문

Python

[Python] ploty를 이용해 내셔널리그 골든글러브 최종 후보 3인 수비 지표 그래프 만들기

developekkyu37 2023. 1. 19. 17:34
728x90

https://developerkkyu37.tistory.com/66

 

[Python] MLB Stats API를 이용해 내셔널리그 골든글러브 후보 3인 수비 지표 비교(김하성 포함)

패키지 임포트 import statsapi import pandas as pd 내셔널리그 골든글러브 최종 후보 3인 검색 김하성, 댄스비 스완슨, 미겔 로하스의 선수 id 찾기 print(statsapi.lookup_player('ha-seong')) print(statsapi.lookup_player('d

developerkkyu37.tistory.com

패키지 설치 및 임포트

!pip install plotly

import plotly.offline as pyo
import plotly.graph_objs as go

앞서 만든 데이터 프레임 활용

수비 지표 데이터 추출

경기 출장 수, 송구 아웃, 직접 아웃, 수비 기회, 실책, 송구 실책, 필딩율, RFPG, RFPI 데이터 추출

df_d1 = df.iloc[[0, 2, 3, 5]]
df_d1.rename(index={'gamesPlayed': "유격수 출장수", 'assists': "송구 아웃", 'putOuts' : '직접 아웃', 'chances' : '수비 기회'}, inplace=True)

df_d2 = df.iloc[[4, -1]]
df_d2.rename(index={'errors' : '실책', 'throwingErrors' : '송구 실책'}, inplace=True)

df_d3 = df.iloc[[6, 7, 8]]

df_d1
df_d2
df_d3

df_d1
df_d2
df_d3

그래프 만들기

kim = go.Bar(x=df_d1['Kim'].keys(), y=df_d1['Kim'].values,
                marker = {'color': 'gold'},
                name='Kim')
swanson = go.Bar(x=df_d1['Swanson'].keys(), y=df_d1['Swanson'].values,
               marker = {'color': 'red'},
               name='Swanson')
rojas = go.Bar(x=df_d1['Rojas'].keys(), y=df_d1['Rojas'].values,
               marker = {'color': '#a4daf6'},
               name='Rojas')
data = [kim, swanson, rojas]
layout = go.Layout(title='주요 수비 지표 비교')
fig = go.Figure(data=data, layout=layout)
pyo.iplot(fig)
kim = go.Bar(x=df_d2['Kim'].keys(), y=df_d2['Kim'].values,
                marker = {'color': 'gold'},
                name='Kim')
swanson = go.Bar(x=df_d2['Swanson'].keys(), y=df_d2['Swanson'].values,
               marker = {'color': 'red'},
               name='Swanson')
rojas = go.Bar(x=df_d2['Rojas'].keys(), y=df_d2['Rojas'].values,
               marker = {'color': '#a4daf6'},
               name='Rojas')
data = [kim, swanson, rojas]
layout = go.Layout(title='주요 수비 지표 비교')
fig = go.Figure(data=data, layout=layout)
pyo.iplot(fig)
kim = go.Bar(x=df_d3['Kim'].keys(), y=df_d3['Kim'].values,
                marker = {'color': 'gold'},
                name='Kim')
swanson = go.Bar(x=df_d3['Swanson'].keys(), y=df_d3['Swanson'].values,
               marker = {'color': 'red'},
               name='Swanson')
rojas = go.Bar(x=df_d3['Rojas'].keys(), y=df_d3['Rojas'].values,
               marker = {'color': '#a4daf6'},
               name='Rojas')
data = [kim, swanson, rojas]
layout = go.Layout(title='주요 수비 지표 비교')
fig = go.Figure(data=data, layout=layout)
pyo.iplot(fig)

df_d1
df_d2
df_d3

다음 시즌 김하성을 기대해보자

728x90