matplotlib绘图3
#scatter
fig=plt.figure()
ax=fig.add_subplot(3,3,1)#3行3列 第一个图
n=128
X=np.random.normal(0,1,n)
Y=np.random.normal(0,1,n)
T=np.arctan2(Y,X)#T用来上色的
#plt.axes([0.025,0.025,0.95,0.95])#显示的范围
ax.scatter(X,Y,s=75,c=T,alpha=.5)#s表示点的大小,c表示颜色,用T的值来给c上色
plt.xlim(-1.5,1.5)
plt.xticks([])
plt.ylim(-1.5,1.5)
plt.yticks([])
plt.xlabel("X")
plt.ylabel("Y")
plt.title("scatter")
#bar
fig.add_subplot(332)
n=10
X=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='red')
#+Y1表示把柱状图画在横轴上面;facecolor配置柱子颜色;edgecolor配置柱子边缘颜色
plt.bar(X,-Y2,facecolor='#ff9999',edgecolor='green')
#-Y2表示把柱状图画在横轴下面;
for x,y in zip(X,Y1):
plt.text(x+0.4, y+0.05, '%.2f'%y, ha='center', va='top')
#添加注释;x+0.4, y+0.05表示注释的位置;'%.2f'%y表示注释的格式;
#ha='center'注释的水平位置;va='bottom'注释在条的位置,top表示在条的里面,bottom表示在条的上面(外面)
for x,y in zip(X,Y2):
plt.text(x+0.4, -y-0.05, '%.2f'%y, ha='center', va='top') #Pie
fig.add_subplot(333)
n=20
Z=np.ones(n)
Z[-1]*=2
plt.pie(Z,explode=Z*.05,colors=['%f'%(i/float(n)) for i in range(n)],
labels=['%.2f'%(i/float(n)) for i in range(n)])
#plt.pie传入一个数组;explode=Z*.05表示每一个扇形里中心的距离;colors=['%f'%设置的为灰度颜色;
#labels=标签,在此打印为颜色的值
plt.gca().set_aspect('equal')#set_aspect('equal')成为一个正的圆形,不是为椭圆
plt.xticks()
plt.yticks()
#Polar
fig.add_subplot(334,polar=True)#polar=True为下面plt.plot(theta,radii)话极坐标图,做铺垫
#否则的话,为折线图
n=20
theta=np.arange(0.0,2*np.pi,2*np.pi/n)#0-2pi;2*np.pi/n为间隔
radii=10*np.random.rand(n)#radii为半径
plt.plot(theta,radii)
#或者为plt.polar(theta,radii)
#plt.polar(theta,radii) #heatmap热图
fig.add_subplot(335)
from matplotlib import cm
data=np.random.rand(3,3)
cmap=cm.Blues#指定颜色cmap=cmap表示color map
map=plt.imshow(data, interpolation='nearest', cmap=cmap,aspect='auto',vmin=0,vmax=1)
#interpolation='nearest'表示最近插值 ;vmin=0,vmax=1代表颜色的调整;aspect='auto'自动调整大小;
#
#3D图
from mpl_toolkits.mplot3d import Axes3D
ax=fig.add_subplot(336,projection="3d")
ax.scatter(1,1,3,s=100) #hot map 热力图
fig.add_subplot(313)#横跨3个位置
def f(x,y):
return (1-x/2+x**5+y**3)*np.exp(-x**2-y**2)
n=256
x=np.linspace(-3,3,n)
y=np.linspace(-3,3,n)
X,Y=np.meshgrid(x,y)
plt.contourf(X,Y,f(X,Y),8,alpha=.75,cmap=plt.cm.hot)
plt.savefig("./data/fig.png")#保存图形
plt.show()#显示图
matplotlib绘图3的更多相关文章
- matplotlib 绘图
http://blog.csdn.net/jkhere/article/details/9324823 都打一遍 5 matplotlib-绘制精美的图表 matplotlib 是python最著名的 ...
- python实战学习之matplotlib绘图续
学习完matplotlib绘图可以设置的属性,还需要学习一下除了折线图以外其他类型的图如直方图,条形图,散点图等,matplotlib还支持更多的图,具体细节可以参考官方文档:https://matp ...
- matplotlib绘图的基本操作
转自:Laumians博客园 更简明易懂看Matplotlib Python 画图教程 (莫烦Python)_演讲•公开课_科技_bilibili_哔哩哔哩 https://www.bilibili. ...
- python中利用matplotlib绘图可视化知识归纳
python中利用matplotlib绘图可视化知识归纳: (1)matplotlib图标正常显示中文 import matplotlib.pyplot as plt plt.rcParams['fo ...
- matplotlib绘图基本用法-转自(http://blog.csdn.net/mao19931004/article/details/51915016)
本文转载自http://blog.csdn.net/mao19931004/article/details/51915016 <!DOCTYPE html PUBLIC "-//W3C ...
- python实战学习之matplotlib绘图
matplotlib 是最流行的Python底层绘图库,主要做数据可视化图表 可以将数据可视化,能够更直观的呈现数据 matplotlib绘图基本要点 首先实现一个简单的绘图 # 导入pyplot f ...
- 【原】在Matplotlib绘图中添加Latex风格公式
Matplotlib绘图的过程中,可以为各个轴的Label,图像的Title.Legend等元素添加Latex风格的公式. 只需要在Latex公式的文本前后各增加一个$符号,Matplotlib就可以 ...
- Matplotlib绘图双纵坐标轴设置及控制设置时间格式
双y轴坐标轴图 今天利用matplotlib绘图,想要完成一个双坐标格式的图. fig=plt.figure(figsize=(20,15)) ax1=fig.add_subplot(111) ax1 ...
- ssh调用matplotlib绘图报错RuntimeError: Invalid DISPLAY variable
1.问题:在本地用matplotlib绘图可以,但是在ssh远程绘图的时候会报错 RuntimeError: Invalid DISPLAY variable 2.原因:matplotlib的默认ba ...
- Matplotlib绘图及动画总结
目录 Matplotlib绘图总结 绘图原理 block模式(python默认) interactive模式(ipython模式默认) 深入子图 子图表示 子图绘图 绘制动画 参考链接 Matplot ...
随机推荐
- leetcode 199. Binary Tree Right Side View 、leetcode 116. Populating Next Right Pointers in Each Node 、117. Populating Next Right Pointers in Each Node II
leetcode 199. Binary Tree Right Side View 这个题实际上就是把每一行最右侧的树打印出来,所以实际上还是一个层次遍历. 依旧利用之前层次遍历的代码,每次大的循环存 ...
- SpringMVC异常处理方式
一.描述 在J2EE项目的开发中,不管是对底层的数据库操作过程,还是业务层的处理过程,还是控制层的处理过程,都不可避免会遇到各种可预知的.不可预知的异常需要处理.每个过程都单独处理异常,系统的代码耦合 ...
- Kafka 笔记1
Kafka 是对日志文件进行 append 操作,因此磁盘检索的开支是较小的:同时 为了减少磁盘写入的次数,broker 会将消息暂时 buffer 起来,当消息的个数(或大小)达到一定阀值时,再 f ...
- WireShark抓包工具使用
WireShark是一款网络封包分析软件,它抓取网络封包,并尽可能显示出最详细的封包资料. wireshark的准备工作 安装wireshark sudo apt-get install wiresh ...
- 7-51单片机ESP8266学习-AT指令(8266TCP服务器,编写自己的C#TCP客户端发信息给单片机控制小灯的亮灭)
http://www.cnblogs.com/yangfengwu/p/8780182.html 自己都是现做现写,如果想知道最终实现的功能,请看最后 先把源码和资料链接放到这里 链接: https: ...
- oracle 记录被另一个用户锁住
第一步:查询处用户,被锁表名,sessionID select b.owner,b.object_name,l.session_id,l.locked_modefrom v$locked_object ...
- CF1105E Helping Hiasat 最大团
传送门 发现自己不会求最大团了可海星 如果将每一个朋友看做点,将两个\(1\)之间存在\(2\)操作的所有朋友之间互相连边,那么我们最后要求的就是这个图的最大独立集. 某个图的最大独立集就是反图的最大 ...
- Luogu4528 CTSC2008 图腾 树状数组、容斥
传送门 设$f_i$表示$i$排列的数量,其中$x$表示不确定 那么$$ans=f_{1324}-f_{1432}-f_{1243}=(f_{1x2x}-f_{1423})-(f_{14xx}-f_{ ...
- 使用TensorFlow的递归神经网络(LSTM)进行序列预测
本篇文章介绍使用TensorFlow的递归神经网络(LSTM)进行序列预测.作者在网上找到的使用LSTM模型的案例都是解决自然语言处理的问题,而没有一个是来预测连续值的. 所以呢,这里是基于历史观察数 ...
- 懒人小工具:T4生成实体类Model,Insert,Select,Delete以及导出Excel的方法
由于最近公司在用webform开发ERP,用到大量重复机械的代码,之前写了篇文章,懒人小工具:自动生成Model,Insert,Select,Delete以及导出Excel的方法,但是有人觉得这种方法 ...