一、绘制国家十四五规划词云图
(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()