首页 > 编程语言 > 详细

python用matplotlib绘图

时间:2021-06-09 18:14:14      阅读:34      评论:0      收藏:0      [点我收藏+]

一、绘制PDF/CDF图

1. 绘制CDF图的示例代码
import numpy as np
import matplotlib.pyplot as plt

# 随机生成10000个数字列表data(μ=0,σ=1的正态分布)
data = np.random.normal(0, 1, 10000)    
fig = plt.figure(figsize = (10, 8))

# 设置标题
plt.title("CDF图")

# 绘制CDF图(cumulative = True);cumulative = False时绘制PDF图
plt.hist(data, bins = 100, cumulative = True, density=True)
plt.show()
2. 绘制的图

技术分享图片

3. plt.hist函数参数:
def hist(
        x, bins=None, range=None, density=False, weights=None,
        cumulative=False, bottom=None, histtype=‘bar‘, align=‘mid‘,
        orientation=‘vertical‘, rwidth=None, log=False, color=None,
        label=None, stacked=False, *, data=None, **kwargs)
用到的几个参数名 取值范围和含义
x 就是要绘制的数据,是个一维数据
bins 感觉是直方图的柱柱数目,数据多柱柱也多就看起来平滑点
density True:归一化;默认值False
cumulative 默认值False:PDF图;True:CDF图

二、绘制三维图(将矩阵绘制成图)

1. 绘制三维图的示例代码
import numpy as np
import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d import Axes3D

# 随机生成100*200的矩阵,值的范围0~10
Z = np.random.randint(0, 10, (100, 200))    
size = Z.shape
Y = np.arange(0, size[0], 1)
X = np.arange(0, size[1], 1)
X, Y = np.meshgrid(X, Y)

fig = plt.figure(figsize=(12, 10))
ax = fig.gca(projection=‘3d‘)

# 设置标题和三个轴的名称
ax.set_title(‘三维图绘制‘)
ax.set_xlabel(‘X轴‘)
ax.set_ylabel(‘Y轴‘)
ax.set_zlabel(‘Z轴‘)

# 绘制散点图
ax.scatter3D(X, Y, Z, s=20, c=X)
plt.show()
2. 绘制的图(随机生成的数据,图中点的分布就比较均匀)

技术分享图片

3. ax.scatter3D函数常用几个参数说明
用到的几个参数名 取值范围和含义
X, Y, Z 就是要绘制的数据,Z是个二维矩阵;X,Y根据代码中进行设置就行
s size,散点图中点的大小
c color,颜色,样例中是根据X轴的数据变化进行着色;也可以直接设置成‘green’等颜色,就是整个图只有一个颜色了

python用matplotlib绘图

原文:https://www.cnblogs.com/doubleyue/p/14859162.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!