커뮤니티
포인트
쿠폰
내 강의실
국비 신청 내역
증명서
계정
로그아웃
학습 질문
개발 일지
나의 활동
답변 완료
한국어 출력이 잘 되질 않습니다.
undefined주차
북마크
윤*성
댓글
2
추천
0
조회수
4
조회수
4
답변 완료

* 겪고 있는 문제 상황을 최대한 자세하게 작성해주세요.

* 문제 해결을 위해 어떤 시도를 해보았는지 구체적으로 함께 알려주세요.


#질문 내용

한국어 출력이 잘 되질 않습니다.특히 코랩에서 나눔글꼴까지 설치하고 경로지정하였지만,

정확한 함수와 라이브러리내용을 이해못해 피드백이 필요합니다.


즉,아래와 같이 한국어로 표시하고 싶은 부분이 있는데 나오질 않습니다..

plt.title('주식 수익률', fontproperties=font_prop)

plt.xlabel('종목명', fontproperties=font_prop)

plt.ylabel('수익률', fontproperties=font_prop)



#전체 화면 캡처


에러는 아래와 같이 뜹니다..

스파르타 즉문즉답





#작성한 코드 및 에러 메세지


import FinanceDataReader as fdr

import matplotlib as mpl  # 기본 설정

import matplotlib.pyplot as plt  # 그래프 그리기

import matplotlib.font_manager as fm  # 폰트 관리

import warnings

warnings.filterwarnings(action='ignore')


fe = fm.FontEntry(fname=r'/usr/share/fonts/truetype/nanum/NanumGothic.ttf', name='NanumGothic') #파일 저장되어있는 경로와 이름 설정

fm.fontManager.ttflist.insert(0, fe)  # Matplotlib에 폰트 추가

plt.rcParams.update({'font.size': 10, 'font.family': 'NanumGothic'}) #폰트설정

font_prop = font_manager.FontProperties(fname=fe)


# 특정 주식의 수익률을 계산하는 함수

def make_rate(code):

    # 주식 데이터를 2020년부터 가져옴

    df = fdr.DataReader(code, '2020')

    # 첫 번째 거래일의 종가를 기준으로 설정

    original = df[['Close']].iloc[0]

    # 모든 거래일의 종가를 첫 번째 거래일 종가로 나누고 1을 빼서 수익률을 계산

    df = df[['Close']] / original - 1

    return df['Close']


# 특정 주식의 최종 수익률을 반환하는 함수

def final_rate(code):

    try:

        # 수익률을 계산하고 마지막 거래일의 수익률을 반환

        return make_rate(code).iloc[-1]

    except:

        # 오류가 발생하면 -1000을 반환

        return -1000


# 코스피지수에 상장된 주식 목록을 가져옴

df = fdr.StockListing('KRX')


# 주식 목록에서 종목 코드(Code)와 이름(Name), 종료가(Close)만 가져옴

df = df[['Code', 'Name','Close']].head(100)


# 각 주식의 최종 수익률을 계산하여 'rate' 열에 추가

df['rate'] = df['Code'].apply(final_rate)


# 수익률이 -50 이상인 주식만 선택

cond = df['rate'] > -50

df = df[cond]


# 수익률을 기준으로 내림차순으로 정렬하고 상위 10개 종목만 선택

df = df.sort_values(by='rate', ascending=False).head(10)


# 'Name' 열을 인덱스로 설정

df.set_index('Name', inplace=True)


# 수익률을 막대 그래프로 그림

df.plot(kind='bar')



# 수익률을 막대 그래프로 그림


# 그래프 제목과 축 레이블 설정

plt.title('주식 수익률', fontproperties=font_prop)

plt.xlabel('종목명', fontproperties=font_prop)

plt.ylabel('수익률', fontproperties=font_prop)


# 그래프를 화면에 표시

plt.show()




취소
 공유
취소
댓글 0
댓글 알림
나의얼굴