python数据可视化plt库实例详解
先看下jupyter和pycharm环境的差别
左边是jupyter----------------------------------------------------------右边是pycharm
文章图片
以下都是使用pycharm环境
1.一个窗口画出一个线性方程
import numpy as npimport matplotlib.pyplot as pltx = np.linspace(0,1,11)# 从0到1,个数为11的等差数列print(x)y = 2*xplt.plot(x,y)plt.show()
文章图片
2.两个窗口分别画出一个线性方程
import numpy as npimport matplotlib.pyplot as pltx = np.linspace(0,1,11)# 从0到1,个数为11的等差数列y1 = 2*xy2 = 3*x# 一个figure就是一个窗口plt.figure()plt.plot(x,y1)# 一个figure就是一个窗口plt.figure()plt.plot(x,y2)# 显示plt.show()
文章图片
3.一个窗口画出两个线性方程
import numpy as npimport matplotlib.pyplot as pltx = np.linspace(0,1,11)# 从0到1,个数为11的等差数列y1 = 2*xy2 = 3*x# 一个figure就是一个窗口plt.figure()plt.plot(x,y1)plt.plot(x,y2)# 显示plt.show()
文章图片
4.定义画图的样式
import numpy as npimport matplotlib.pyplot as pltx = np.linspace(0,1,11)# 从0到1,个数为11的等差数列y = 2*x# 一个figure就是一个窗口plt.figure(num=1)plt.plot(x,y)plt.figure(num=2)# color是线条的颜色plt.plot(x,y,color='red')plt.figure(num=3)# linestyle 是线条的样式plt.plot(x,y,linestyle='--')plt.figure(num=4)# linewidth 是线条的宽度plt.plot(x,y,linewidth=3)# 显示plt.show()
文章图片
5.设置xy轴的范围,标签,刻度
import numpy as npimport matplotlib.pyplot as pltx = np.linspace(0,1,11)# 从0到1,个数为11的等差数列y = 2*xplt.figure(num=1)# 这里是figure1plt.plot(x,y)plt.figure(num=2)# 这里是figure2plt.plot(x,y)plt.xlim(0,3)# 设置x轴范围plt.ylim(0,3)# 设置y轴范围plt.xlabel('this is x')# 设置x轴标签plt.ylabel('this is y')# 设置y轴标签plt.figure(num=3)# 这里是figure3plt.plot(x,y)# 设置x轴刻度x_ticks = np.linspace(1,3,3)plt.xticks(x_ticks)plt.figure(num=4)# 这里是figure4plt.plot(x,y)plt.ylim(0,3)# 设置y轴范围plt.yticks([1,2],['bad','good'])# 设置y轴刻度# 显示plt.show()
文章图片
6.设置图例
import numpy as npimport matplotlib.pyplot as pltx = np.linspace(0,1,11)# 从0到1,个数为11的等差数列y1 = 2*xy2 = 3*xplt.figure()plt.plot(x,y1,label='y1')plt.plot(x,y2,label='y2')plt.legend()# 显示plt.show()
文章图片
7.散点图
import numpy as npimport matplotlib.pyplot as pltx = np.random.randint(0,50,1024)y = np.random.randint(0,50,1024)plt.scatter(x,y,s=20)# 隐藏 x 轴刻度plt.xticks(())# 显示plt.show()
文章图片
8.柱状图
import numpy as npimport matplotlib.pyplot as pltn = 6x = np.arange(n)print(x)# 生成6个数,这6个数在0到1正态分布y = np.random.uniform(0,1,n)print(y)plt.bar(x,y)# 显示plt.show()
文章图片
9.柱状图显示高度
import numpy as npimport matplotlib.pyplot as pltn = 6X = np.arange(n)Y = np.random.uniform(0,1,n)plt.figure(num=1)plt.bar(X,Y)for x,y in zip(X,Y):plt.text(x,y,y)plt.figure(num=2)plt.bar(X,Y)for x,y in zip(X,Y):plt.text(x,y,"%.2f"%y)plt.figure(num=3)plt.bar(X,Y)for x,y in zip(X,Y):plt.text(x,y,"%.2f"%y,ha='center')plt.figure(num=4)plt.bar(X,Y)for x,y in zip(X,Y):plt.text(x,y+0.01,"%.2f"%y,ha='center')# 显示plt.show()
文章图片
10.等高线图
import numpy as npimport matplotlib.pyplot as pltdef f(X,Y):return X+Yn = 256x = np.linspace(0,3,n)y = np.linspace(0,3,n)X,Y=np.meshgrid(x,y)plt.figure()plt.contourf(X,Y,f(X,Y),4,cmap=plt.cm.hot)plt.figure()plt.contourf(X,Y,f(X,Y),9,cmap=plt.cm.hot)plt.figure()plt.contourf(X,Y,f(X,Y),9,cmap=plt.cm.hot)plt.contour(X,Y,f(X,Y),9)plt.figure()plt.contourf(X,Y,f(X,Y),9,cmap=plt.cm.hot)C = plt.contour(X,Y,f(X,Y),9)plt.clabel(C,inline=True)# 显示plt.show()
文章图片
11.一个窗口多个子图
import matplotlib.pyplot as pltplt.figure()# 两行两列的第一个位置,不加逗号也可以plt.subplot(2,2,1)plt.plot([0,1],[0,1])# 两行两列的第二个位置,不加逗号也可以plt.subplot(2,2,2)plt.plot([0,2],[0,2])# 两行两列的第三个位置,不加逗号也可以plt.subplot(223)plt.plot([0,3],[0,3])# 两行两列的第四个位置,不加逗号也可以plt.subplot(224)plt.plot([0,4],[0,4])plt.figure()# 两行两列的第一个位置,不加逗号也可以plt.subplot(2,1,1)plt.plot([0,1],[0,1])# 两行两列的第二个位置,不加逗号也可以plt.subplot(2,3,4)plt.plot([0,2],[0,2])# 两行两列的第三个位置,不加逗号也可以plt.subplot(235)plt.plot([0,3],[0,3])# 两行两列的第四个位置,不加逗号也可以plt.subplot(236)plt.plot([0,4],[0,4])# 显示plt.show()
文章图片
12.常用子图显示
plt.figure(figsize=(20,10))for i in range(40):plt.subplot(4,10,i+1)plt.xticks()plt.yticks()plt.grid(False)plt.imshow(train_images[i],cmap=plt.cm.binary_r)plt.title(train_labels[i])plt.show()
文章图片
13.格子布局放置子图
import matplotlib.pyplot as pltplt.figure()# 三行三列的布局,从0行0列开始,占一行三列ax1 = plt.subplot2grid((3,3),(0,0),colspan=3,rowspan=1)ax1.plot([0,1],[0,1])ax1.set_title('this is ax1')# 三行三列的布局,从1行0列开始,占一行两列ax2 = plt.subplot2grid((3,3),(1,0),colspan=2,rowspan=1)# 三行三列的布局,从1行2列开始,占两行一列ax3 = plt.subplot2grid((3,3),(1,2),colspan=1,rowspan=2)# 三行三列的布局,从2行0列开始,占一行一列ax4 = plt.subplot2grid((3,3),(2,0),colspan=1,rowspan=1)# 三行三列的布局,从2行1列开始,占一行一列ax5 = plt.subplot2grid((3,3),(2,1),colspan=1,rowspan=1)# 显示plt.show()
文章图片
【python数据可视化plt库实例详解】以上就是python可视化数据plt库实例的详细内容,更多关于python可视化数据plt库的资料请关注脚本之家其它相关文章!
推荐阅读
- Docker应用:容器间通信与Mariadb数据库主从复制
- python学习之|python学习之 实现QQ自动发送消息
- 逻辑回归的理解与python示例
- python自定义封装带颜色的logging模块
- 【Leetcode/Python】001-Two|【Leetcode/Python】001-Two Sum
- Python基础|Python基础 - 练习1
- Python爬虫|Python爬虫 --- 1.4 正则表达式(re库)
- 为什么孩子一定要学会可视化思维!
- 使用协程爬取网页,计算网页数据大小
- Python(pathlib模块)