Python软件设计基础 第一节 词云图绘制和OPENCV基础篇

一、绘制国家十四五规划词云图

(1)准备工作

1.数据准备

Pip3 install wordcloud

下载一篇报告,本地存为AI2017.txt文件,生成词云图

2.安装包

Pip3 install wordcloud

(2)代码实现

1.导入文件文本。

import os
print(os.getcwd())
from wordcloud import WordCloud
import matplotlib.pyplot as plt
#text=open('AI2017.txt','r').read()   
text=open("C145.txt",'r',encoding='utf-8').read()

2.指定中文字体。

font=r'c:\Windows\Fonts\simfang.ttf'    #raw string
wc=WordCloud(font_path=font,width=800,height=600).generate(text)

plt.imshow(wc)
plt.axis('off')
plt.show()
wc.to_file('AI.jpg')

 3.分词并且统计词频。

import jieba
with open('C145.txt','r',encoding='utf-8') as f:
    renmin=f.read()

jieba.load_userdict('dict.txt')
seg_list=jieba.cut(renmin,cut_all=False)

tf={}
for seg in seg_list:
    if seg in tf:
        tf[seg]+=1
    else:
        tf[seg]=1
ci=list(tf.keys())
with open('stopword.txt','r',encoding='utf-8') as ft:
    stopword=ft.read()
    
for seg in ci:
    if tf[seg]<5 or len(seg)<2 or seg in stopword or "一" in seg:
        tf.pop(seg)

print(tf)

ci, num, data = list(tf.keys()), list(tf.values()),[]
for i in range(len(tf)):
    data.append((num[i],ci[i])) #逐个将键值对存入data中
data.sort()#升序排列
data.reverse()#逆序,得到所需的降序排列

tf_sorted={}
print(len(data),data[0],data[0][0],data[0][1])

for i in range(len(data)):  
    tf_sorted[data[i][1]]=data[i][0]

print(tf_sorted)

4.统计词频后绘制词云图。

import os
print(os.getcwd())
from wordcloud import WordCloud
import matplotlib.pyplot as plt
#text=open('AI2017.txt','r').read()   
font=r'c:\Windows\Fonts\simfang.ttf'    #raw string
wc=WordCloud(font_path=font,width=800,height=600).generate_from_frequencies(tf)

plt.imshow(wc)
plt.axis('off')
plt.show()
wc.to_file('AI.jpg')

 

二、基于OpenCV简单图像视频输入输出

(1)准备工作

1.数据准备

安装OpenCV-Python

Pip install opencv-python

2.使用matplotlib显示

import numpy as np 
import matplotlib . pyplot as plt 

x=np.arange(0,6.3,0.1)
print(x)
y=np.sin(x)
print(y)

plt.plot(x,y)
plt.show()

3.捕获摄像头(键盘’q’退出)

import numpy as np 
import cv2

cap=cv2.VideoCapture(0) 
while(True):
    ret,frame=cap.read()
    gray=cv2.cvtColor(frame,cv2.COLOR_BGR2GRAY)
    
    cv2.imshow('frame', gray)
    if cv2.waitKey(1)&0xFF==ord('q'):
        break
                                
cap.release()
cv2.destroyAllWindows()

4.查看一个对象所拥有的属性和方法

import numpy as np 
import cv2
from matplotlib import pyplot as plt

img=cv2.imread("elephant.jpg",1)
img=cv2.cvtColor(img,cv2.COLOR_BGR2RGB)
h,w=img.shape[:2] 
print(h,w)
plt.imshow(img,cmap="gray") 
plt.axis("off") 
plt.show()

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值