Matplotlib——画图画图(散点图、柱状图、等高线图、散点图、柱状图、等高线图、3D图图)
文章目录文章目录1.画散点图2.画柱状图3.等高线图4.image图5.画3D图
1.画散点图画散点图
首先,先引入matplotlib.pyplot简写作plt,再引入模块numpy用来产生一些随机数据。生成100个呈标准正态分布的二维数据组 (平均
数是0,方差为1) 作为一个数据集,并图像化这个数据集。每一个点的颜色值用T来表示:
import matplotlib.pyplot as plt
import numpy as np
X = np.random.normal(0,1,100) #高斯分布(均值为0,方差为1,100个样本)
Y = np.random.normal(0,1,100)
T = np.arctan2(Y,X) #反正切函数,返回的是弧度
plt.scatter(X,Y,s=50,c=T,alpha=.8) #alpha为透明度
plt.xlim(-3,3)
plt.ylim(-3,3)
plt.xticks(()) #参数为空代表隐藏x轴坐标
plt.yticks(())
plt.show()
输入X和Y作为location,size=50,颜色为T,color map用默认值,透明度alpha 为 80%。 x轴显示范围定位(-3,3),并用xtick()函
数来隐藏x坐标轴,y轴同理。效果如下图:
2.画柱状图画柱状图
生成10个数据,X为 0 到 9 的整数 ,Y是相应的均匀分布的随机数据。 使用的函数是plt.bar,参数为X和Y
下面我们就颜色和数值进行优化。 用facecolor设置主体颜色,edgecolor设置边框颜色为白色
接下来我们用函数plt.text分别在柱体上方加上数值,用%.2f保留两位小数,横向居中对齐ha=‘center’,纵向底部对齐va=‘bottom’:
import matplotlib.pyplot as plt
import numpy as np
X = np.arange(10)
Y = (1-X/float(10))*np.random.uniform(0.5,1.0,10) #从均匀分布中随机采样(上界、下界、样本输出数目)
plt.bar(X,Y,facecolor='pink',edgecolor='white')
for x,y in zip(X,Y):
plt.text(x+0.05,y+0.02,'%.2f' % y,ha='center',va='bottom')
plt.xlim(-.5,10)
plt.ylim(0,1.0)
plt.xticks(())
plt.yticks(())