扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
基本代码如下:
成都创新互联凭借在网站建设、网站推广领域领先的技术能力和多年的行业经验,为客户提供超值的营销型网站建设服务,我们始终认为:好的营销型网站就是好的业务员。我们已成功为企业单位、个人等客户提供了成都做网站、成都网站建设、成都外贸网站建设服务,以良好的商业信誉,完善的服务及深厚的技术力量处于同行领先地位。
这里使用numpy包的random函数随机生成1000组数据,然后通过scatter函数绘制了散点图。
重点其实在于scatter函数。
x,y 形如shape(n,)的数组,可选值,
s 点的大小(也就是面积)默认20
c 点的颜色或颜色序列,默认蓝色。其它如c = 'r' (red); c = 'g' (green); c = 'k' (black) ; c = 'y'(yellow)
marker 形状,可选值,默认是圆
如果需要其他的,可搜索matplotlib的官网,在官网中搜索markers,选择第一个结果。
alpha:标量,可选,默认值:无, 0(透明)和1(不透明)之间的alpha混合值
示例alpha = 0.5
edgecolors,顾名思义,边缘颜色或颜色序列,可选值,默认值:None
'''
s:
size的缩写,设置散点的大小。若是给定一个数值,则所有点的大小一致;若是给定一个数组,则每个点的大小不同。
c:
color的缩写,设置散点的颜色。若只有一个值,则所有的点设置为同一个颜色,若给定一个颜色数组,则不同的点可以设置成不同的颜色,若给定浮点数的数组,则映射到相应的颜色。
marker:
用于设置散点的标记,用法与折线图的marker参数一对称,具体参考《python数据可视化--matplotlib绘制折线图(2)》对marker的详细介绍。
cmap:
表示数据点的颜色映射表,仅当参数c为浮点数的数组时才可用。cmap需要花很大的篇幅进行介绍,往后再详细讲解,在此先按下不表。
norm:
表示数据的亮度,取值范围在0~1,只有c是一个浮点数的数组的时候才使用。
alpha:
表示数据的透明度,取值范围在0~1。
linewidths:表示数据点边缘的宽度。
edgecolors:表示数据点边缘的颜色。
'''
'''
颜色映射是一系列颜色,从起始颜色渐变到结束颜色,可用于突出数据的规律
例如,交钱的颜色显示较小的值,较深的颜色显示较大的值
'''
接受自己的普通,然后全力以赴的出众,告诉自己要努力,但不要着急....
当然, 这个结果并不是我真正想要的,Pass, 太丑了!
好吧,安排,我们先看下实现后的效果!
这个效果自然就比之前的好多了!
实现python散点图绘制需要用到matplotlib库, matplotlib库是专门用于可视化绘图的工具库;学习一个新的库当然看官方文档了:
实现思路:
matplotlib.pyplot.scatter() 函数是专门绘制散点图的函数:
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 , ***, data=None , ** kwargs ) **
plt.scatter(observation, estimate, c=Z1, cmap=colormap, marker=".", s=marker_size, norm=colors.LogNorm(vmin=Z1.min(), vmax=0.5 * Z1.max()))
其中:
1、c参数为计算的散点密度;
2、cmap为色带(matplotlib里面自带了很多色带可供选择),参见:
3、由于计算的散点密度数值大小分散,因此利用norm参数对散点密度Z1进行归一化处理(归一化方式很多,参见colors类),并给归一化方式设置色带刻度的最大最小值vmin和vmax(一般这两个参数就是指定散点密度的最小值和最大值),这样就建立起了密度与色带的映射关系。
(这里的结果与前面展示的相比改变了计算散点密度的半径:radius = 3以及绘制散点图的散点大小marksize)
作者能力水平有限,欢迎各位批评指正!
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流