Python 과 WordCloud 로 단어 구름 을 그 리 는 실현 방법(글꼴 을 선명 하 게 하 는 비법 이 첨부 되 어 있 습 니 다)

2813 단어 PythonWordCloud사운
환경 및 모듈:
윈 7 64 위
  • Python 3.6.4
  • WordCloud 1.5.0
  • Pillow 5.0.0
  • Jieba 0.39
  • 목표:
    안휘성 2018 년 일부 과학 기술 프로젝트 의 어 운 을 그 려 서 이 슈 를 직관 적 으로 보 여 준다.
    생각:
    먼저 항목 의 이름 을 추출 하고 Jieba 로 단 어 를 나 눈 후 어 휘 를 추출 합 니 다.'연구 개발','시리즈'등 무의미 한 단 어 를 걸 러 낸다.마지막 으로 워드 클 라 우 드 로 단어 구름 을 그립 니 다.
    확장:
    어 운 은 기본적으로 사각형 이 고 본 코드 는 그림 을 몽 판 으로 하여 이 형 어 운 도 를 생 성 한다.이곳 에서 사용 하 는 사진 은 안휘성 지도 다.
    비법:
    인터넷 의 일반적인 방법 으로 그 려 진 단어 구름 은 글씨체 가 약간 모호 하고 비 급 은 마지막 에 밝 혔 다.
    정식 시작,당신 에 게 코드 를 표시:
    
    import numpy as np
    from PIL import Image
    import re
    import jieba
    from wordcloud import WordCloud,ImageColorGenerator,STOPWORDS
    import matplotlib.pyplot as plt
    # http://www.cnblogs.com/hatemath/
    #          txt  
    with open('content.txt','r',encoding='utf-8') as f:
      word= (f.read())
      f.close()
    
    #        
    image=np.array(Image.open('ditu.jpg')) 
    font=r'C:\\Windows\\fonts\\msyh.ttf' 
    
    #     ,     
    resultword=re.sub("[A-Za-z0-9\[\`\~\!\@\#\$\^\&\*\(\)\=\|\{\}\'\:\;\'\,\[\]\.\<\>\/\?\~\。\@\#\\\&\*\%]", "",word) 
    wordlist_after_jieba = jieba.cut(resultword) 
    wl_space_split = " ".join(wordlist_after_jieba) 
    
    #       
    sw = set(STOPWORDS) 
    sw.add("  ")
    sw.add("  ")
    sw.add("      ,        ")
    
    #     
    my_wordcloud = WordCloud(scale=4,font_path=font,mask=image,stopwords=sw,background_color='white',
                 max_words = 100,max_font_size = 60,random_state=20).generate(wl_space_split) 
    
    #        
    plt.imshow(my_wordcloud)
    plt.axis("off") 
    plt.show() 
    
    #       
    my_wordcloud.to_file('result.jpg')
    그 중에서 ditu.jpg 는 안휘성 윤곽 사진 이다.

    실행 결과:

    스마트 기기,시공 공법,시스템 플랫폼,케이블,로봇 등 이 많이 등장 하 는 단어 임 을 알 수 있다.
    마지막 으로 비 급 발표 시간:
    왜 나의 이 그림 은 이렇게 선명 합 니까?원 도 를 보면 이 그림 의 해상 도 는 1800*2500 입 니 다.인터넷 의 대부분의 코드 를 사용 하여 마지막 으로 생 성 된 그림 은 크기 가 매우 작고 위의 필적 가장자리 가 모호 하 다.
    관건 은 워드 클 라 우 드 를 호출 할 때의 인자 입 니 다.코드 를 재생 하 십시오.
    
    #     
    my_wordcloud = WordCloud(scale=4,font_path=font,mask=image,stopwords=sw,background_color='white',
    max_words = 100,max_font_size = 60,random_state=20).generate(wl_space_split) 
    첫 번 째 인 자 는 제 가 쓴 건 요. scale=4,이 수치 가 클 수록 이미지 해상도 가 높 고 글씨 가 선명 합 니 다.너 는 64 로 옮 겨 볼 수 있다.나 는 너의 컴퓨터 가 충분히 빨리/웃 고 울 기 를 바란다.
    이상 이 바로 본 고의 모든 내용 입 니 다.여러분 의 학습 에 도움 이 되 고 저 희 를 많이 응원 해 주 셨 으 면 좋 겠 습 니 다.

    좋은 웹페이지 즐겨찾기