Matplotlib 入门(二):画图
来源:互联网 发布:淘宝怎样收藏店铺 编辑:程序博客网 时间:2024/06/07 03:00
一、散点图
1、画几个散点一点都不难
将x,y放入plt.scatter()中就好了。
plt.scatter(np.arange(5),np.arange(5)) #绘制散点图
2、代码
# -*- coding: utf-8 -*-"""Created on Sat Sep 23 19:20:54 2017@author: ryoyun"""# Scatter 散点图import matplotlib.pyplot as pltimport numpy as npn = 1024X = np.random.normal(0,1,n)Y = np.random.normal(0,1,n)#T = np.arctan2(Y,X) # for color value#plt.scatter(X,Y,s=75,c=T,alpha= 0.5)plt.scatter(np.arange(5),np.arange(5)) #绘制散点图#plt.xlim((-1.5,1.5))#plt.ylim((-1.5,1.5))plt.xticks(())plt.yticks(())plt.show()
3、效果
二、柱状图
1、柱状图生成
plt.bar(X, +Y1,facecolor='#9999ff',edgecolor='white') # 生成柱状图
2、代码
# -*- coding: utf-8 -*-"""Created on Sat Sep 23 19:28:19 2017@author: ryoyun"""# bar 柱状图import matplotlib.pyplot as pltimport numpy as npn = 12X = np.arange(n)Y1 = (1- X/float(n))*np.random.uniform(0.5,1.0,n)Y2 = (1- X/float(n))*np.random.uniform(0.5,1.0,n)plt.bar(X, +Y1,facecolor='#9999ff',edgecolor='white') # 生成柱状图plt.bar(X, -Y2,facecolor='#ff9999',edgecolor='white')for x,y in zip(X,Y1): # ha:horizontal alignment plt.text(x+0.4,y+0.05,'%.2f'%y,ha ='center',va='bottom') # 数字标注for x,y in zip(X,Y2): # ha:horizontal alignment plt.text(x+0.4,-y-0.05,'-%.2f'%y,ha ='center',va='top')plt.xlim(-0.5,n)plt.xticks(())plt.ylim(-1.25,1.25)plt.yticks(())plt.show()
3、效果
三、等高线
1、三部曲
1.1轮廓填充
plt.contourf(X,Y,f(X,Y),8,alpha=0.75,cmap=plt.cm.hot) # 填充轮廓
1.2画等高线
C = plt.contour(X,Y,f(X,Y),8,colors= 'black',linewidth = 0.5) #画等高线
1.3进行标注
plt.clabel(C,inline= True ,fontsize= 10) #增加标注
2、代码
# -*- coding: utf-8 -*-"""Created on Sat Sep 23 19:44:25 2017@author: ryoyun"""# Contours 等高线图import matplotlib.pyplot as pltimport numpy as npdef f(x,y): # the height function return (1-x/2+x**5+y**3)*np.exp(-x**2-y**2)n = 256x = np.linspace(-3,3,n)y = np.linspace(-3,3,n)X,Y = np.meshgrid(x,y) # 生成矩阵# plt.contourf to filling contours# X,Y and value for (X,Y) pointplt.contourf(X,Y,f(X,Y),8,alpha=0.75,cmap=plt.cm.hot) # 填充轮廓# use plt.counter to add counter linesC = plt.contour(X,Y,f(X,Y),8,colors= 'black',linewidth = 0.5) #画等高线# add labelplt.clabel(C,inline= True ,fontsize= 10) #增加标注plt.xticks(())plt.yticks(())plt.show()
3、效果
四、图片
1、数字用图片来表示
plt.imshow(a,interpolation='nearest',cmap='bone',origin='lower')
a = 填充的数组
cmap='bone' #灰度色图
2、代码
# -*- coding: utf-8 -*-"""Created on Sat Sep 23 19:57:52 2017@author: ryoyun"""# image 图片import matplotlib.pyplot as pltimport numpy as npn = 9#a = [[0 1 2]# [3 4 5]# [6 7 8]]a = np.array(np.arange(n)).reshape(3,3)# 生成3个数组,每个数组个元素plt.imshow(a,interpolation='nearest',cmap='bone',origin='lower')plt.colorbar()# 颜色标注plt.xticks(())plt.yticks(())plt.show()
3、效果
五、3D视图
1、更酷炫的3D图
1.1导入3d包
from mpl_toolkits.mplot3d import Axes3D
1.2增加3D的figure
ax = Axes3D(fig)
1.3 开始画3D图
ax.plot_surface(X,Y,Z,rstride= 1,cstride= 1,cmap=plt.get_cmap('rainbow'))
1.4 增加投影
ax.contourf(X,Y,Z,zdir='z',offset = -2,cmap='rainbow')
2、代码
# -*- coding: utf-8 -*-"""Created on Sat Sep 23 20:09:50 2017@author: ryoyun"""# 3Dimport matplotlib.pyplot as pltimport numpy as npfrom mpl_toolkits.mplot3d import Axes3Dfig = plt.figure()ax = Axes3D(fig)# X,Y valueX = np.arange(-4,4,0.25)Y = np.arange(-4,4,0.25)X,Y = np.meshgrid(X,Y) # 生成网格矩阵R = np.sqrt(X**2+Y**2) # height valueZ = np.sin(R) # z的值# rstride,cstride跨度# cmap=plt.get_cmap('rainbow') 颜色设置ax.plot_surface(X,Y,Z,rstride= 1,cstride= 1,cmap=plt.get_cmap('rainbow'))ax.contourf(X,Y,Z,zdir='z',offset = -2,cmap='rainbow')ax.set_zlim(-2,2)plt.show()
3、效果
参考:莫烦python https://morvanzhou.github.io/tutorials/
- Matplotlib 入门(二):画图
- matplotlib画图(3)
- matplotlib画图(4)
- matplotlib画图(5)
- 【Python】Matplotlib画图(二)——根据函数公式画图
- Python:Matplotlib 画图(Code)
- matplotlib画图
- matplotlib画图
- matplotlib 画图
- matplotlib画图
- matplotlib画图
- matplotlib画图
- matplotlib 画图
- matplotlib画图
- matplotlib画图
- matplotlib 画图
- matplotlib 画图
- Matplotlib for presenting results(论文画图matplotlib jupyter文档)
- phpstorm点滴
- SpringBoot学习之入门篇
- Unity自学之路(2)——UGUI
- 单链表的基本操作
- STL:计算集合的并
- Matplotlib 入门(二):画图
- std::common_type用法
- MapKit/地图定位导航(第三篇:后台定位)
- spring boot 第一篇 构建第一个spring boot工程
- zookeeper实现分布式应用系统服务器上下线动态感知程序、监听机制与守护线程
- HTML DOM学习笔记(一)_简介
- coursera Stanford Machine Learning Week5 Ex4机器学习 实验4
- 更改的资料
- 磁芯存储器简介------顺便说说core dump的core是什么含义