가로 막대 그래프 그리기 : plt.barh()

30 P
QUESTION 08 #378
프로그래밍 언어 인기도를 가로 방향 막대 그래프로 시각화하는 프로그램입니다. 빈칸을 채우세요.
main.py
import matplotlib
matplotlib.use('Agg')
import matplotlib.pyplot as plt

langs = ['Python', 'Java', 'JavaScript', 'C++', 'Go']
popularity = [35, 25, 20, 12, 8]

# 가로 방향 막대 그래프를 그립니다.
plt.(langs, popularity, color='skyblue')
plt.title('Language Popularity')
plt.xlabel('Popularity (%)')
plt.show()

print("1위:", langs[0])
print("언어 수:", len(langs))
실행 결과 예시
1위: Python
언어 수: 5
INTERACTIVE SHELL Shift + Enter 로 즉시 실행

가로 막대 그래프 (Horizontal Bar Chart)

plt.barh()는 막대를 가로 방향으로 그리는 함수입니다.

bar() vs barh() 비교

plt.bar() 세로:         plt.barh() 가로:

■                       Python    ■■■■■■■■■■
■ ■                     Java      ■■■■■■■
■ ■ ■                   JavaScript■■■■■■
■ ■ ■ ■ ■              C++       ■■■■
+-+-+-+-+-              Go        ■■■
P J J C G
비교 bar() (세로) barh() (가로)
막대 방향 위로 ↑ 오른쪽으로 →
x축 항목 이름 값 (숫자)
y축 값 (숫자) 항목 이름

언제 가로 막대를 사용할까?

상황 추천
항목 이름이 경우 barh()
항목이 많은 경우 (10개+) barh()
항목이 적고 이름이 짧은 경우 bar()
순위(랭킹) 표현 barh()

색상 지정

# 단일 색상
plt.barh(langs, popularity, color='skyblue')

# 각 막대별 다른 색상
colors = ['gold', 'silver', '#cd7f32', 'gray', 'lightgray']
plt.barh(langs, popularity, color=colors)

정렬해서 보여주기

데이터를 크기순으로 정렬하면 더 읽기 쉽습니다:

# 판다스와 함께 활용
df = pd.DataFrame({'언어': langs, '인기도': popularity})
df_sorted = df.sort_values('인기도')
plt.barh(df_sorted['언어'], df_sorted['인기도'])

💡 핵심: 항목 이름이 길거나 많을 때는 barh()bar()보다 읽기 편합니다.