scatter python_Python数据可视化之scatter( )函数

使用scatter( )绘制散点图并设置其样式

有时候,需要绘制散点图并设置各个数据点的样式。例如,你可能想以一种颜色显示较小的值,而用另一种颜色显示较大的值。绘制大型数据集时,你还可以对每个点都设置同样的样式。再使用不同的样式选项重新绘制某些点以突出它们。

要绘制单个点,可以使用函数scatter( ),并向它传递一对x和y坐标,它将在指定位置绘制一个点。

80cb39dbb6fd5266769a1723f8ab522fd507368f.png?token=1169088e87fb78dc5047ff3b9ff6b14a&s=69C21366FAE08F7C5EF1840F0300A0C2

c8177f3e6709c93d6a0ab631cd8e3dd8d30054b7.png?token=af5077a3a00339da32ccad0645b628f1&s=5FA83C62096F41280EFD90CA030010B1

下面我们来设置输出的样式,使其更有趣:添加标题,给轴加上标签,并确保所有文本都大到能够看清:

2f738bd4b31c870121e4fe9872cc5b2b0608ffb2.png?token=ab5571840bee529ff50e0c64d1fd7b83&s=61F2A364D2F4876C0ECCA5070300B0C3

b219ebc4b74543a96dc538164da44f86bb011442.png?token=1d33d4c137dc94e545918cd1cf7219f0&s=5AA83C62414E554D067D94CA0300C0B1

在这里,我们调用了scatter( )函数,并使用实参s设置了绘制图形时使用的点的尺寸。如果此时运行了我们这个程序,就将看到如上所示的图表中间的一个点。

使用scatter( )绘制一系列点

要绘制一系列点,可以向scatter( )函数传递两个分别包含x值和y值的列表,如下所示:

6609c93d70cf3bc76c204d7082b37fa5cc112a46.png?token=87e5fc4359de1a464bcfe59ffb3b1e88&s=71D2A364D2B48A6D14D4A4030300F0C2

9d82d158ccbf6c81f59204faef8d743132fa40b6.png?token=630aab01a3df66964d68c9ab8aa9113c&s=DBAA3C62414F454D4AF9B0CA0300A0B1

列表x_values包含要计算其平方值的数字,而列表y_values包含前面说的每个数字的平方值。将这些俩表传递给scatter( )时,matplotlib依次从每个列表中读取一个值来绘制一个点。要绘制的点的坐标分别(1,1)、(2,4)、(3,9)、(4,16)和(5,25),最终的结果如上所示。

自动计算数据

手工计算列表要包含的值可能计算效率较低,需要绘制的点很多时尤其如此。可以不用手工计算包含点坐标的列表,而让Python循环来替我们完成这种计算。下面是绘制一千个点的代码:

d53f8794a4c27d1ef81d9e6e4866686adcc4389c.png?token=f194ba6057c99a5a5e1e6b9baa28916c&s=69E2A34452F4946F4C68C4080300F0C1

f11f3a292df5e0fef49baee208d3f1ac5cdf728d.png?token=e9f4ff43f2036f2d669e876f79683fc2&s=5BAA3C625B1F64C842ED98CA030080B3

我们首先创建了一个包含x值的列表,其中包含数字1~1000。接下来是生成y值的解析列表,它遍历x的值,计算其平方值(x**2),并将结果存储到列表y_values中。然后,将输入列表和输出列表传递给scatter( )函数。

由于这个数据集比较大,因此,我们将点设置的比较小,并使用axis( )函数制定了每个坐标轴的取值范围。函数axis( )要求提供四个值,x和y坐标的最大值和最小值。在这里,我们将x坐标轴的范围设置为0-1100,y坐标轴的取值范围设置为0-1100000。结果如上所示。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值