首页 > 后端开发 > Python教程 > Python绘制直方图及子图的方法分析(代码示例)

Python绘制直方图及子图的方法分析(代码示例)

不言
发布: 2019-01-14 10:39:03
转载
7417 人浏览过

本篇文章给大家带来的内容是关于Python绘制直方图及子图的方法分析(代码示例),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。

1、直方图的绘制也需要用到matplotlib下的pylab,只不过在绘制折线图时我们采用的是plot(),而绘制直方图时我们需要采用hist()。由于在绘制过程中缺少真实数据,我在这里采用np.random.normal(a,b,c)生成的随机数绘制直方图,a为平均值,b为标准差,c为生成数据的个数。利用np.arange(a,b,c)确定直方图x轴的范围及间距,a为最小值,b为最大值,c为间距。用plt.hist(a,b)绘制,a为数据,b为直方图的特性,可有可无。

import matplotlib.pylab as plt
import numpy as np
da = np.random.normal(5.0, 0.5, 3000)
dis = np.arange(3.5, 5, 0.1)
plt.hist(da, dis)
plt.show()
登录后复制

2、绘制子图时,我们需要先将空间分为若干份,这时需要采用命令plt.subplot(a,b,c),其中a表示行,b表示列,c表示从第一行开始从左向右数到c的当前区域。例如,如果想要在第一行绘制三个子图,第二行绘制一个子图,需要采用以下代码

import matplotlib.pylab as plt
import numpy as np
plt.subplot(2, 3, 1)
plt.subplot(2, 3, 2)
plt.subplot(2, 3, 3)
plt.subplot(2, 1, 2)
plt.show()
登录后复制

Python绘制直方图及子图的方法分析(代码示例)

3.区域拆分结束后我们该怎样在每个区域内绘制相应的图像呢?我们在前面用代码将区域拆分为了四部分,如果我们想在某个区域内绘图,只需将绘图代码写在那一部分的代码下即可

import matplotlib.pylab as plt
import numpy as np
plt.subplot(2, 3, 1)    #下面的语句绘制第一个子图
x1 = [1, 3, 5, 7, 9, 11]
y1 = [2, 4, 6, 8, 10, 12]
plt.plot(x1, y1, 'c')
plt.subplot(2, 3, 2)    #下面的语句绘制第二个子图
x2 = [3, 5, 6, 7, 9, 13, 20]
y2 = [1, 6, 2, 3, 5, 7, 11]
plt.plot(x2, y2, 'ob')
plt.subplot(2, 3, 3)    #下面的语句绘制第三个子图
x3 = [2, 5, 7, 8, 10, 11]
y3 = [3, 5, 4, 1, 15, 10]
plt.plot(x3, y3, '-.')
plt.plot(x3, y3, 's')
plt.subplot(2, 1, 2)    #下面的语句绘制第四个子图
da = np.random.normal(5.0, 0.5, 3000)
dis = np.arange(3.5, 5, 0.1)
plt.hist(da, dis)
plt.show()
登录后复制

Python绘制直方图及子图的方法分析(代码示例)

以上是Python绘制直方图及子图的方法分析(代码示例)的详细内容。更多信息请关注PHP中文网其他相关文章!

相关标签:
来源:segmentfault.com
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板