Python数据分析三剑客:Pandas、Numpy、Matplotlib

Matplotlib:使用scatter()绘制平面散点图及三维

2018-08-24  本文已影响270人  ACphart

基础

二维散点图的函数原型:
matplotlib.pyplot.scatter(x, y, s=None, c=None, marker=None, cmap=None, norm=None,
                          vmin=None, vmax=None, alpha=None, linewidths=None,
                          verts=None, edgecolors=None, hold=None, data=None,
                          **kwargs)
  1. x, y对应了平面点的位置,
  2. s控制点大小,
  3. c对应颜色指示值,也就是如果采用了渐变色的话,我们设置c=x就能使得点的颜色根据点的x值变化
  4. cmap调整渐变色或者颜色列表的种类,关于颜色的运用其实也挺有趣的,有兴趣可以看一下我的另一篇文章《自定义颜色及渐变颜色》
  5. marker控制点的形状
  6. alpha控制点的透明度,我喜欢在数据量大的时候设置较小的alpha值,然后调整一下s值,这样产生重叠效果使得数据的聚集特征会很好地显示出来:看一下效果
    第一个是不设透明度的
    现在是设置透明度的
    再调整一下点的大小
三维散点图的函数原型
p3d.Axes3D.scatter( xs, ys, zs=0, zdir=’z’, s=20, c=None, depthshade=True, 
                   *args, **kwargs )

p3d.Axes3D.scatter3D( xs, ys, zs=0, zdir=’z’, s=20, c=None, depthshade=True,
                   *args, **kwargs)
  1. xs, ys代表点的x, y轴坐标
  2. zs代表z轴坐标,但有两种形式,第一种就是取一个标量,函数原型里默认就是一个标量0,也就是默认所有的点都画在一个z=0的水平平面上;第二种就是取和xsys同样shape的数组,从而指定每个点的实际z轴坐标,如下:
    zs默认为0
    zs取一个标量
    zs取一个数组
上一篇 下一篇

猜你喜欢

热点阅读