[TIP / Vis ][plotly] 변수 중요도 시각화 하기 (bar_polar , bar plot)
2020. 10. 10. 10:24ㆍ분석 Python/Visualization
패키지 로드
import pandas as pd
import numpy as np
from sklearn.ensemble import RandomForestRegressor
import plotly.express as px
from sklearn.datasets import load_boston
데이터 준비 및 적합시키기.
data_info = load_boston(return_X_y=False)
print(data_info.keys())
# dict_keys(['data', 'target', 'feature_names', 'DESCR', 'filename'])
x = pd.DataFrame(data_info["data"], columns = data_info["feature_names"])
y = pd.Series(data_info["target"] , name="target")
rf = RandomForestRegressor()
rf.fit(x,y)
d={"Stats" : data_info["feature_names"] , "FI" : rf.feature_importances_}
df = pd.DataFrame(d)
df = df.sort_values(by='FI', ascending=0)
시각화) bar_polar를 이용해서 원형 차트로 시각화하기
df_drop = df[df.Stats != '+/-']
import plotly.graph_objects as go
fig = px.bar_polar(df_drop, r="FI", theta="Stats",
color="Stats", template="plotly_dark",
color_discrete_sequence= px.colors.sequential.Plasma_r,)
fig.show()
시각화) bar를 이용해서 시각화하기
fig = px.bar(df_drop, x='Stats', y='FI', color="Stats", template="plotly_dark",)
fig.show()
사실 직관적인 부분은 bar plot이 훨씬 다른 것들도 다 같이 눈에 잘 들어오지만, bar_polar 같은 경우에도 이쁘게 잘 나오는 것 같아서 공유
728x90
'분석 Python > Visualization' 카테고리의 다른 글
[Visualization] x 축에 있는 margin 제거하기 (2/2) (0) | 2020.11.19 |
---|---|
[Visualization] x 축에 중복된 이름 잘 시각화하기 (xticks) (1/2) (1) | 2020.11.19 |
[Visualization] Interact Clustering with Kmeans (with any data)(continuous) (0) | 2020.10.09 |
[Python] 2개 모델 비교하여 시각화 (binary case) (0) | 2020.10.01 |
[Python] scikitplot metric visualization (binary case) (0) | 2020.10.01 |