pandas 작도 에서 중국어 문 제 를 표시 할 수 없 음 을 해결 합 니 다.

최근 에는 pandas 로 시각 화 된 데 이 터 를 처리 하고 정 보 를 발굴 하기 시작 했다.그러나 그림 을 그 릴 때 중국어 문 제 를 표시 할 수 없습니다.
다음 코드 는 fujian1.csv 파일 에서 City 가 있 는 열 에 있 는 각 도시 의 출현 횟수 를 통계 하 는 코드 입 니 다.그러나 직사 도 를 만 들 때 x 축 에 중국 어 를 표시 할 수 없습니다.

import pandas as pd
# Reading data locally
df = pd.read_csv('fujian1.csv', encoding='gbk')
counts = df['City'].value_counts()
counts[counts > 1000].plot(kind = 'bar')
일부 자 료 를 찾 아 보 니 matplotlib 패 키 지 는 기본적으로 ASCII 코드 만 지원 하고 유 니 코드 코드 는 지원 되 지 않 기 때 문 입 니 다.
해결 방법 은 matplotlib 의 설치 디 렉 터 리 에 있 는 matplotlibrc 설정 파일 을 수정 하고 font.family 부분(약 139 줄 정도)설명 을 제거 하 며 font.serif 와 font.sans-serif 지원 글꼴 에 중국어 글꼴 을 추가 하 는 것 입 니 다.예 를 들 어 SimHei:

font.family   : sans-serif
#font.style   : normal
#font.variant  : normal
#font.weight   : medium
#font.stretch  : normal
# note that font.size controls default text sizes. To configure
# special text sizes tick labels, axes, labels, title, etc, see the rc
# settings for axes and ticks. Special text sizes can be defined
# relative to font.size, using the following values: xx-small, x-small,
# small, medium, large, x-large, xx-large, larger, or smaller
#font.size   : 12.0
font.serif   : SimHei, Bitstream Vera Serif, New Century Schoolbook, Century Schoolbook L, Utopia, ITC Bookman, Bookman, Nimbus Roman No9 L, Times New Roman, Times, Palatino, Charter, serif
font.sans-serif  : SimHei, Bitstream Vera Sans, Lucida Grande, Verdana, Geneva, Lucid, Arial, Helvetica, Avant Garde, sans-serif
#font.cursive  : Apple Chancery, Textile, Zapf Chancery, Sand, cursive
#font.fantasy  : Comic Sans MS, Chicago, Charcoal, Impact, Western, fantasy
#font.monospace  : Bitstream Vera Sans Mono, Andale Mono, Nimbus Mono L, Courier New, Courier, Fixed, Terminal, monospace
결국 정상 적 인 중국 어 를 보 여 주 었 다.

이상 의 이 pandas 작도 에서 중국 어 를 표시 할 수 없 는 문 제 를 해결 하 는 것 은 바로 편집장 이 여러분 에 게 공유 한 모든 내용 입 니 다.여러분 에 게 참고 가 되 고 저희 도 많이 응원 해 주 셨 으 면 좋 겠 습 니 다.

좋은 웹페이지 즐겨찾기