matplotlib 示例
示例1
import numpy as np
import matplotlib.pyplot as plt
#plt.rcParams['font.family'] = ['sans-serif']
#用来正常显示中文标签
plt.rcParams['font.sans-serif'] = ['Simhei']
#用来正常显示负号
plt.rcParams['axes.unicode_minus']=False t = np.arange(1,10, 0.05)
x = np.sin(t)
y = np.cos(t) # 绘制一个圆形散点图的示例
#定义一个图像窗口
plt.figure(figsize=(6,5))
#绘制一条线
plt.plot(x,y,'r-.')
#使坐标轴相等
plt.axis('equal')
plt.xlabel('正弦')
plt.ylabel('余弦')
plt.title('一个圆形')
#显示图像
plt.show()

示例2
import numpy as np
import matplotlib.pyplot as plt
##subplot()绘制多个子图 #生成X
x1 = np.linspace(0.0, 5.0)
x2 = np.linspace(0.0, 2.0)
#生成Y
y1 = np.cos(2*np.pi*x1) * np.exp(-x1)
y2 = np.cos(2*np.pi*x2)
##绘制第一个子图
plt.subplot(2, 1, 1)
plt.plot(x1, y1,'y-o')
plt.title('A Tale of 2 Subplots')
plt.ylabel('Damped oscillation')
##绘制第二个子图
plt.subplot(2,1, 2)
plt.plot(x2,y2,'r-o')
plt.xlabel('time(s)')
plt.ylabel('Undamped')
plt.show()

示例3
#直方图
import numpy as np
import matplotlib.pyplot as plt
from scipy import stats #example data
mu = 100 #分布的均值
sigma = 15 #分布的标准差
x = mu + sigma * np.random.randn(10000) #直方图的条数
num_bins = 50
#绘制直方图
n,bins,patches=plt.hist(x,num_bins,density=1, color='g',alpha=0.5)
#添加一个最佳拟合和曲线
y = stats.norm.pdf(bins, mu, sigma) #返回关于数据的 pdf 数值(概率密度函数)
plt.plot(bins,y,'r--')
plt.xlabel('Smarts')
plt.ylabel('Probability')
#在图中添加公式需要使用 latex 的语法($$)
plt.title('Histogram of IQ : $\mu=100$ , $\sigma=15$')
#调整图像的间距,防止 轴数值与 label 重合
plt.subplots_adjust(left=0.15)
plt.show() print("Bind:\n",bins)
坑:plt.hist中原来的normed没有了,替换成了density,否则画不出来。

示例4
#matplotlib 绘制三维图像
import numpy as np
from matplotlib import cm
import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d import Axes3D #生成数据
delta = 0.2
x = np.arange(-3,3, delta)
y = np.arange(-3,3, delta)
X, Y = np.meshgrid(x,y)
Z = X**2 + Y**2
x = X.flatten()
#返回一维的数组,但该函数只能适用于 numpy 对象( array 或者 mat)
y = Y.flatten()
z = Z.flatten()
fig = plt.figure(figsize=(12,6))
ax1 = fig.add_subplot(121 , projection='3d')
ax1.plot_trisurf(x,y,z, cmap=cm.jet , linewidth=0.01)
#cmap 指颜色,默认绘制为 RGB(A )颜色空间, jet 表示”蓝 红”颜色
plt.title("3D")
ax2 = fig.add_subplot(122)
cs= ax2.contour(X, Y, Z, 15 , cmap='jet')
#注意这里是大写 X,Y,Z 15 代表的是显示等高线的密集程度,数值越大,画的等
#高线数就越多
ax2.clabel(cs,inline=True,fontsize=10,fmt='%1.1f')
plt.title('Contour')
plt.show()

示例5
#三维图像+各个轴的投影等高线
from mpl_toolkits.mplot3d import axes3d
import matplotlib.pyplot as plt
from matplotlib import cm
fig= plt.figure (figsize=(8 , 6))
ax= fig.gca(projection='3d')
#生成 维测试数据
X, Y, Z = axes3d.get_test_data(0.05)
ax.plot_surface(X, Y, Z, rstride=8, cstride=8, alpha=0.3)
cset = ax.contour(X, Y, Z, zdir='z', offset=-100 , cmap=cm.coolwarm)
cset = ax.contour(X, Y, Z, zdir='x', offset=-40 , cmap=cm.coolwarm)
cset=ax.contour(X, Y, Z, zdir= 'y',offset=40 , cmap=cm.coolwarm)
ax.set_xlabel('x')
ax.set_xlim (-40 , 40)
ax.set_ylabel ('Y')
ax.set_ylim(-40 , 40)
ax.set_zlabel ('z')
ax.set_zlim (-100 , 100)
plt.show()

示例6
import numpy as np
import matplotlib . pyplot as plt
#生成数据
n_groups = 5 #组数
#平均分和标准差
means_men = (20 , 35 , 30 , 35 , 27)
std_men = (2 , 3 ,4 ,1 , 2)
means_women = (25 , 32 , 34 , 20 , 25)
std_women = (3 , 5 , 2 , 3 , 3)
#条形图
fig , ax= plt.subplots()
#生成 0, 1. 2, 3 , ..
index= np.arange (n_groups)
bar_width = 0.35 #条的宽度
opacity= 0.4
error_config = {'ecolor': '0.3'}
#条形图中的第一类条
rectsl = plt.bar(index , means_men , bar_width,
alpha = opacity,
color ='b',
yerr = std_men,
error_kw = error_config,
label = 'Men')
#条形图中的第二类条
rects2 = plt.bar(index +bar_width , means_women , bar_width,
alpha = opacity,
color = 'r',
yerr = std_women,
error_kw = error_config,
label = 'Women')
plt.xlabel('Group')
plt.ylabel('Scores')
plt. title('Scores by group and gender')
plt.xticks(index + bar_width, ('A','B','C','D','E'))
plt.legend()
#自动调整 subplot 的参数给指定的填充区
plt.tight_layout()
plt.show()

示例7
#饼图
import matplotlib.pyplot as plt
#切片将按顺时针方向排列并绘制
labels = 'Frogs','Hogs','Dogs','Logs' #标注
sizes = [15 , 30 , 45 , 10] #大小
colors = ['yellowgreen','gold','lightskyblue','lightcoral'] #颜色
# 0.1代表第二个块从圆中分离出来
explode = (0 ,0, 0, 0.1)
#绘制饼图
plt.pie(sizes, explode=explode , labels=labels, colors=colors,
autopct = '%1.1f%%', shadow=True , startangle=90)
plt.axis('equal')
plt.show()

示例8
#气泡图(散点图〉
import matplotlib.pyplot as plt
import pandas as pd
#导入数据
df_data= pd.read_csv("https://github.com/sileixinhua/Python_data_science_by_iris/
blob/master/iris.csv")
print(df_data.head()) #作图
fig , ax = plt.subplots()
#设置气泡图颜色 colors =15* ["yellowgreen","gold","green","blue","red","black",
'lightskyblue','lightcoral','yellow','pink'] #创建气泡图 SepalLength x, SepalWidth ,同时设置 PetalLength 为气
#泡大 ,并设置颜色透明度等
ax.scatter(df_data['sepal_length'],df_data['sepal_width'],s= df_data['petal_length']*100,color = colors,alpha = 0.6)
#第三个变 表明根据[ PetalLength ]门 00 数据显示气泡的大小
ax.set_xlabel ('sepal_length(cm)')
ax.set_ylabel ('epal_width(cm)')
ax.set_title ('petal_length(cm)*100')
#显示网格
ax.grid(True)
fig.tight_layout()
plt.show()

matplotlib 示例的更多相关文章
- python强大的绘图模块matplotlib示例讲解
Matplotlib 是 Python 的绘图库.作为程序员,经常需要进行绘图,在我自己的工作中,如果需要绘图,一般都是将数据导入到excel中,然后通过excel生成图表,这样操作起来还是比较繁琐的 ...
- matplotlib示例
plt.plot 内只有一个列表示例 import matplotlib.pyplot as plt lst = [4.53,1.94,4.75,0.43,2.02,1.22,2.13,2.77] p ...
- matplotlib basic and boxplot
============================================matplotlib 绘图基础========================================= ...
- python数据分析scipy和matplotlib(三)
Scipy 在numpy基础上增加了众多的数学.科学及工程常用的库函数: 线性代数.常微分方程求解.信号处理.图像处理.稀疏矩阵等: Matplotlib 用于创建出版质量图表的绘图工具库: 目的是为 ...
- Matplotlib基本使用简介
目录 Matplotlib基本使用简介 1. Matplotlib简介 2. Matplotlib操作简介 Matplotlib基本使用简介 1. Matplotlib简介 Matplotlib是 ...
- python基础全部知识点整理,超级全(20万字+)
目录 Python编程语言简介 https://www.cnblogs.com/hany-postq473111315/p/12256134.html Python环境搭建及中文编码 https:// ...
- 巩固复习(Hany驿站原创)_python的礼物
Python编程语言简介 https://www.cnblogs.com/hany-postq473111315/p/12256134.html Python环境搭建及中文编码 https://www ...
- 如何使用Python 进行数据可视化
微信公众号:码农充电站pro 个人主页:https://codeshellme.github.io 在进行数据分析的时候,经常需要将数据进行可视化,以方便我们对数据的认识和理解. 0,Matplotl ...
- Matplotlib常用示例入门
一.Matplotlib介绍 Matplotlib 是一个 Python 的 2D绘图库,它以各种硬拷贝格式和跨平台的交互式环境生成出版质量级别的图形.通过 Matplotlib,开发者可以仅需要几行 ...
随机推荐
- 关于web标准
从我去年接触前端,到现在,我似乎都没有特意去研究过web标准.我只知道传统上推崇结构样式行为分离,js.css.html各司其职, 不推荐在文档的节点上写类似<p onclick=“fn()”& ...
- 计算程序运行时间(.net1.1 于.net2.0的区别)在.net2.0中提供了Stopwatch类,简单例子
1. [代码].NET 2.0 using System.Diagnostics; private Stopwatch stw = new Stopwatch(); private void ...
- stm32实现DMX512协议发送与接收(非标)
最近把玩了一下485,期间也接触了dmx512通信协议,该协议主要用于各种舞台灯光的控制当中,进而实现各种光效以及色彩变化.根据标准的512协议,其物理连接与传统上的RS485是完全一致的,并没有什么 ...
- Docker 入门:什么是 Docker ?
Docker 解决了软件环境部署复杂的问题. 对于一个传统的软件工程,开发人员把写好的代码放到服务器上去运行是一件很头疼的事情,因为常常会出现环境不兼容而导致各种各样的 Bug. 比如说,开发是在 w ...
- 杂谈WebApiClient的性能优化
前言 WebApiClient的netcoreapp版本的开发已接近尾声,最后的进攻方向是性能的压榨,我把我所做性能优化的过程介绍给大家,大家可以依葫芦画瓢,应用到自己的实际项目中,提高程序的性能. ...
- [JavaWeb基础] 026.JAVA中使用Axis搭建webservice-环境搭建(一)
在实际的项目开发过程中,我们经常会使用第三方交互,特别是在前后端语言不一致的情况下,相信webservice这个第三方控件大家都清楚.后面会慢慢带大家来学习它的使用方式,下面就先讲讲它的工具搭建. 一 ...
- 03 . 前端之JavaScipt
JavaScript概述 ECMAScript和JavaScript的关系 1996年11月,JavaScript的创造者–Netscape公司,决定将JavaScript提交给国际标准化组织ECMA ...
- OI 做题的常见错误
会引起 Compile Error 的错误 由于这类错误过于简单,相信是个正常人都会修,故略写. int main() 写为 int mian() . 写完 struct 或 class 忘记写分号. ...
- Rocket - tilelink - fastProperty
https://mp.weixin.qq.com/s/9nikweQUGG5FO3Z8t6feaw 介绍Parameters中定义的fastProperty的实现.(使用最近的新版本,差别不大) ...
- Java实现 LeetCode 813 最大平均值和的分组 (DFS+DP记忆化搜索)
813. 最大平均值和的分组 我们将给定的数组 A 分成 K 个相邻的非空子数组 ,我们的分数由每个子数组内的平均值的总和构成.计算我们所能得到的最大分数是多少. 注意我们必须使用 A 数组中的每一个 ...