728x90
반응형


import pandas as pd
import matplotlib.pyplot as plt
import numpy as np
def add_value_label(x_list,y_list): # bar chart에 값을 text로 표시
for i in range(1, len(x_list)+1):
plt.text(i-1,y_list[i-1],y_list[i-1])
df = pd.read_csv('travel_1.csv', header=0, encoding='utf-8')
# df2 = df[['호텔','친척 또는 친구집','유스호스텔/게스트하우스/여관','콘도/펜션/레지던스인','기타']]
df2 = df.groupby(['통계분류(2)']).sum()
df2 = df2.drop(columns='사례수')
fig = plt.figure(figsize=(14, 6)) # plot 크기 설정
plt.rcParams['font.family'] = 'NanumGothic' # 한글 가능하도록 폰트 설정
f_size = 16 # 제목 폰트 크기
bar_width = 0.1
x_column = 'X축'
y_column = 'Y축'
x_label = list(df2.columns) # 데이터명
x = np.arange(len(x_label))
y = list(df2.iloc[0]) # 데이터
y2 = list(df2.iloc[1]) # 데이터
plt.bar(x, y, bar_width, alpha=0.4, label='남성') # bar chart 그리기
add_value_label(x, y) # 값 표시
plt.bar(x+bar_width, y2, bar_width, label='여성')
add_value_label(x+bar_width, y2) # 값 표시
plt.xticks(x, x_label)
plt.title("숙박시설 비율",fontsize=f_size) # 제목 쓰기
plt.legend()
plt.show()
728x90
반응형
'프로그램' 카테고리의 다른 글
| [파이썬] 문제 : 주사위 3개를 던졌을 때 주사위 2개의 합이 7이 되는 경우 출력 (0) | 2023.05.09 |
|---|---|
| [파이썬] 문제 : tkinter에 matplotlib chart 그리기 (0) | 2023.05.07 |
| [파이썬] 터틀(turtle)에서 주사위 정육면체 코드에서 그룹화해서 이동 및 각도 변경해서 그리기 (0) | 2023.05.06 |
| [파이썬] 문제 : tkinter 가위,바위,보 게임 (1) | 2023.05.06 |
| [파이썬] 문제 : 터틀(turtle) 임의의 크기, 각도, 이동해 5개 거북이 그리기 (0) | 2023.05.05 |

댓글