[์‹œ๊ฐํ™”] - Radar Chart

ํ•ญ๋‹ˆยท2021๋…„ 12์›” 21์ผ
0

์•ˆ๋…•ํ•˜์„ธ์š”, ์‹œ๊ฐํ™” ์žฅ์ธ Hangnii ์ž…๋‹ˆ๋‹ค๐Ÿ˜๐Ÿ˜†

์˜ค๋Š˜์€ ์‹œ๊ฐํ™”๋กœ ์“ฐ์ด๋Š” ๊ทธ๋ž˜ํ”„ ์ค‘ ํ•˜๋‚˜์ธ ๋ ˆ์ด๋”์ฐจํŠธ(Radar Chart)๋ฅผ
ํŒŒ์ด์ฌ ์ฝ”๋“œ๋กœ ๊ตฌํ˜„ํ•˜๋Š” ๋ฒ•์— ๋Œ€ํ•ด ์•Œ์•„๋ณผ๊ฒŒ์š”!


๐Ÿ“ก ๋ ˆ์ด๋” ์ฐจํŠธ(Radar Chart) ๐Ÿ•ธ

๋ ˆ์ด๋” ์ฐจํŠธ๋Š” ์–ด๋–ค ์ธก์ • ๋ชฉํ‘œ์— ๋Œ€ํ•œ ํ‰๊ฐ€ํ•ญ๋ชฉ์ด ์—ฌ๋Ÿฌ ๊ฐœ์ผ ๋•Œ,
ํ•ญ๋ชฉ ์ˆ˜์— ๋”ฐ๋ผ ์›์„ ๊ฐ™์€ ๊ฐ„๊ฒฉ์œผ๋กœ ๋‚˜๋ˆ„๊ณ 
์ค‘์‹ฌ์œผ๋กœ๋ถ€ํ„ฐ ์ผ์ • ๊ฐ„๊ฒฉ์œผ๋กœ ๋™์‹ฌ์œผ๋กœ ์ฒ™๋„๋ฅผ ์žฌ๋Š” ์นธ์„ ๋‚˜๋ˆ„์–ด,
๊ฐ ํ‰๊ฐ€ํ•ญ๋ชฉ์˜ ์ •๋Ÿ‰ํ™”๋œ ์ ์ˆ˜์— ๋”ฐ๋ผ ๊ทธ ์œ„์น˜์— ์ ์„ ์ฐ๊ณ 
ํ‰๊ฐ€ํ•ญ๋ชฉ๊ฐ„ ์ ์„ ์ด์–ด ์„ ์œผ๋กœ ๋งŒ๋“  ๊ทธ๋ž˜ํ”„
์ž…๋‹ˆ๋‹ค :)


์—ฌ๋Ÿฌ ์ธก์ • ๋ชฉํ‘œ๋ฅผ ํ•จ๊ป˜ ๊ฒน์ณ ๋†“์•„ ๋น„๊ตํ•˜๊ธฐ์—๋„ ํŽธ๋ฆฌํ•˜๊ณ ,
๊ฐ ํ•ญ๋ชฉ ๊ฐ„ ๋น„์œจ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ ๊ท ํ˜•๊ณผ ๊ฒฝํ–ฅ์„ ์ง๊ด€์ ์œผ๋กœ ์•Œ ์ˆ˜ ์žˆ๋‹ค๋Š” ์žฅ์ ์ด ์žˆ์œผ๋ฉฐ,

๋ ˆ์ด๋‹ค์˜ ํ‘œ์‹œ์žฅ์น˜์™€ ๋‹ฎ์•„์„œ ๋ ˆ์ด๋‹ค ๋„ํ‘œ๋ผ๊ณ  ํ•˜๋ฉฐ ๋ ˆ์ด๋‹ค ์ฐจํŠธ, ๋ ˆ์ด๋‹ค ๊ทธ๋ž˜ํ”„ ํ˜น์€ ์ŠคํŒŒ์ด๋” ์ฐจํŠธ๐Ÿ•ธ, ์Šคํƒ€ ์ฐจํŠธ๐ŸŒ ๋ผ๊ณ ๋„ ํ•ฉ๋‹ˆ๋‹ค.
(์ถœ์ฒ˜: ์œ„ํ‚ค๋ฐฑ๊ณผ)

์ €๋Š” ์ด๋ฒˆ์— <์ง์—… ์ถ”์ฒœ ์‹œ์Šคํ…œ>์„ ๋งŒ๋“œ๋Š” ๋จธ์‹ ๋Ÿฌ๋‹ ํ”„๋กœ์ ํŠธ๋ฅผ ์ง„ํ–‰ํ•˜๋ฉด์„œ ์ง๋ฌด๋งŒ์กฑ๋„, ์‚ฌํšŒ์  ํ‰ํŒ, ํ‰๊ท  ์—ฐ๋ด‰, ์ง์—… ์•ˆ์ •์„ฑ, ์ง์—… ์ „๋ง ๋“ฑ์˜ ์ง€ํ‘œ๋“ค์„ ์ข…ํ•ฉํ•œ ์ˆœ์œ„๋ฅผ ๋ฐ˜์˜ํ•˜์—ฌ ๋‚˜์—๊ฒŒ ๋งž๋Š” ์ถ”์ฒœ ์ง์—… Best3! ๋ฅผ ๋ณด์—ฌ์ฃผ๋Š” ์‹œ๊ฐํ™” ๋„๊ตฌ๋กœ ์ด ๋ ˆ์ด๋” ์ฐจํŠธ๊ฐ€ ๊ฐ€์žฅ ๋จผ์ € ๋– ์˜ฌ๋ผ์„œ ํŒŒ์ด์ฌ matplotlib ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ์‚ฌ์šฉํ•ด ๊ตฌํ˜„์„ ํ•ด๋ณด์•˜๋‹ต๋‹ˆ๋‹ค๐Ÿ˜Ž

dict1={'reputation':result_3.iloc[0,0], 
       'income': result_3.iloc[0,1], 
       'stability': result_3.iloc[0,2], 
       'satisfaction': result_3.iloc[0,3], 
       'prospects': result_3.iloc[0,4] }
dict2={'reputation':result_3.iloc[1,0], 
       'income': result_3.iloc[1,1], 
       'stability': result_3.iloc[1,2], 
       'satisfaction': result_3.iloc[1,3], 
       'prospects': result_3.iloc[1,4] }
dict3={'reputation':result_3.iloc[2,0], 
       'income': result_3.iloc[2,1], 
       'stability': result_3.iloc[2,2], 
       'satisfaction': result_3.iloc[2,3], 
       'prospects': result_3.iloc[2,4] }

categories1=list(dict1.keys()) #xticks ์„ค์ •์„ ์œ„ํ•œ ๊ธฐ๋ณธ๊ฐ’
categories1=[*categories1, categories1[0]]

numbers1=list(dict1.values())
numbers1=[*numbers1, numbers1[0]]

numbers2=list(dict2.values())
numbers2=[*numbers2, numbers2[0]]

numbers3=list(dict3.values())
numbers3=[*numbers3, numbers3[0]]

label_loc=np.linspace(start=0, stop=2*np.pi, num=len(numbers1))
plt.figure(figsize=(10,10))
ax=plt.subplot(polar=True)
plt.xticks(label_loc, labels=categories1, fontsize=20)

ax.plot(label_loc, numbers1, label=jobdict[result_idx[0]], linestyle='dashed', color='pink')
ax.fill(label_loc, numbers1, color='pink', alpha=0.3)

ax.plot(label_loc, numbers2, label=jobdict[result_idx[1]], linestyle='dashed', color='yellow')
ax.fill(label_loc, numbers2, color='yellow', alpha=0.3)

ax.plot(label_loc, numbers3, label=jobdict[result_idx[2]], linestyle='dashed', color='skyblue')
ax.fill(label_loc, numbers3, color='skyblue', alpha=0.3)

ax.legend()
plt.show()

๊ณผ์—ฐ... ๊ฒฐ๊ณผ๋Š”!?!?!?!!?

Ta-da-!



์˜ˆ์˜์ง€ ์•Š๋‚˜์š”?! ๐Ÿ˜†๐Ÿ˜‹
ํ™•์‹คํžˆ ์ง์ ‘ ๋งŒ๋“  ์‹œ๊ฐํ™” ๊ฒฐ๊ณผ๋ฌผ๋“ค์€ ์• ์ •์ด ๊ฐˆ์ˆ˜๋ฐ–์— ์—†๋Š” ๊ฑฐ ๊ฐ™์•„์š”ใ…Žใ…Ž

์ด๋ ‡๊ฒŒ ์‹œ๊ฐํ™” ๊ธฐ๋ฒ•๋“ค์„ ํ•˜๋‚˜์”ฉ ๊ตฌํ˜„ํ•ด๋‚˜๊ฐ€๋Š” ์žฌ๋ฏธ๊ฐ€ ์ ์ ํ•˜๋‹ต๋‹ˆ๋‹ฟใ…Ž
์ €๋Š” ๋ฐ์ดํ„ฐ ๋ถ„์„ ๊ณผ์ • ์ค‘์— ์‹œ๊ฐํ™” ํ•  ๋•Œ๊ฐ€ ๊ฐ€์žฅ ์žฌ๋ฏธ์žˆ๋Š” ๊ฒƒ ๊ฐ™์•„์š” ใ…‹ใ…‹ใ…‹
Visualization Master๊ฐ€ ๋˜๋Š” ๊ทธ๋‚ ๊นŒ์ง€! ํ™”์ดํŒ…!

profile
3D ๋ชจ๋ธ ํ”Œ๋žซํผ์—์„œ ๋ฐ์ดํ„ฐ ๋ถ„์„์„ ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค

0๊ฐœ์˜ ๋Œ“๊ธ€