1 scatter散点图
import matplotlib.pyplot as plt
import numpy as np
调用.scatter函数,第一个参数是x轴,第二个参数是y轴
plt.scatter(np.arange(5),np.arange(5))
plt.show()
![](https://i-blog.csdnimg.cn/blog_migrate/8f4c019ad6d70e7b43cacf9e011412ce.png)
.scatter函数其他的参数,点的大小用’s’,颜色用’c’,alpha是设置透明度,下图中颜色比较深是因为点重合了。
x = np.random.normal(0,1,500)
y = np.random.normal(0,1,500)
plt.scatter(x,y,s=50,c='b',alpha=0.5)
#限制x,y的范围
plt.xlim((-2,2))
plt.ylim((-2,2))
plt.xticks(())
plt.yticks(())
plt.show()
![](https://i-blog.csdnimg.cn/blog_migrate/fafa702a9a6510f86cf46ff7ecac8bd0.png)
2 bar直方图
import matplotlib.pyplot as plt
import numpy as np
调用.bar函数绘制直方图,第一个参数是x,第二个参数是y;
x = np.arange(10)
y = 2**x + 10
plt.bar(x,y)
plt.show()
![](https://i-blog.csdnimg.cn/blog_migrate/01d21493c3440fd70e49ddc588cc800b.png)
x = np.arange(10)
y = 2**x + 10
plt.bar(x,-y)
plt.show()
![](https://i-blog.csdnimg.cn/blog_migrate/fdf050c1ace6b32d26f049dd9047a934.png)
参数facecolor是设置颜色,边框颜色默认为黑色,edgecolor可以设置边框颜色;
x = np.arange(10)
y = 2**x + 10
plt.bar(x,y,facecolor='#9999ff',edgecolor='white')
plt.show()
![](https://i-blog.csdnimg.cn/blog_migrate/520e8308689639bc990bba3f25e4048b.png)
x = np.arange(10)
y = 2**x + 10
plt.bar(x,y,facecolor='#9999ff',edgecolor='white')
# zip 可以实现多个读取
for x,y in zip(x,y):
# 给直方图顶端添加数值描述
plt.text(x+0.1,y,'%.2f' % y,ha='center',va='bottom')
plt.show()
![](https://i-blog.csdnimg.cn/blog_migrate/6928b471ed408f4241b3ff40ce46cdd3.png)
3 contours 等高线图
import matplotlib.pyplot as plt
import numpy as np
# 该函数表示x,y对应的高度
def f(x,y):
return (1-x/2+x**5+y**3)*np.exp(-x**2-y**2)
x = np.linspace(-3,3,100)
y = np.linspace(-3,3,100)
# 将x,y传入到网格中
X,Y =np.meshgrid(x,y)
# 8 的意思是生成8+1条等高线;cmp 表示图的颜色
plt.contourf(X,Y,f(X,Y),8,alpha=0.75,cmap=plt.cm.hot)
# 添加等高线的数值描述
C = plt.contour(X,Y,f(X,Y),8,colors='black',linewidths=.5)
plt.clabel(C,inline=True,fontsize=10)
plt.xticks(())
plt.yticks(())
plt.show()
![](https://i-blog.csdnimg.cn/blog_migrate/2c2a2d3deeeaa21a23295f56098e37b9.png)