6.5 散点图

本文介绍了散点图的基本概念及应用,通过实例演示了如何使用matplotlib库绘制散点图,并展示了如何通过散点图来分析两个变量之间的相关性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

6.5.1散点图简介

散点图(scatter diagram)表示因变量随自变量而变化的大致趋势,据此可以选择合适的函数对数据点进行拟合。
用两组数据构成多个坐标点,考察坐标点的分布,判断两变量之间是否存在某种关联或总结坐标点的分布模式。散点图将序列显示为一组点,值由点在图表中的位置表示,类别由图表中的不同标记表示,散点图通常用于比较跨类别的聚合数据。如图所示:


散点图的相关性

由上图可以看出,左图x轴和y轴表现出强相关关系,而右图数据点比较分散,相关性不大。

6.5.2 散点图的绘制

我们依旧以电影网站评分数据为例绘制散点图,调用的是matplotlib库中的scatter方法。示例代码:

import pandas as pd
import matplotlib.pyplot as plt
reviews = pd.read_csv("fandango_scores.csv")
cols = ['FILM', 'RT_user_norm', 'Metacritic_user_nom', 'IMDB_norm', 'Fandango_Ratingvalue', 'Fandango_Stars']
norm_reviews = reviews[cols]
fig, ax = plt.subplots()
ax.scatter(norm_reviews['Fandango_Ratingvalue'], norm_reviews['RT_user_norm'])
ax.set_xlabel('Fandango')
ax.set_ylabel('Rotten Tomatoes')
plt.show()

显示结果:


两电影网站评分

以上结果返回的是Fandango_Ratingvalue和RT_user_norm两个网站分别在x轴和y轴对每部电影的评分值,由结果可以看出,两个网站评分趋势成一定的相关关系。

6.5.3 绘制多个散点图子图

我们也可以利用生成多子图操作做转置对比,示例代码:

fig = plt.figure(figsize=(5,10))
ax1 = fig.add_subplot(2,1,1)
ax2 = fig.add_subplot(2,1,2)
ax1.scatter(norm_reviews['Fandango_Ratingvalue'], norm_reviews['RT_user_norm'])
ax1.set_xlabel('Fandango')
ax1.set_ylabel('Rotten Tomatoes')
ax2.scatter(norm_reviews['RT_user_norm'], norm_reviews['Fandango_Ratingvalue'])
ax2.set_xlabel('Rotten Tomatoes')
ax2.set_ylabel('Fandango')
plt.show()

显示结果:


电影评分网站对比

上图分别将Fandango_Ratingvalue和RT_user_norm两个网站的值进行x轴和y轴的转置,由两图对比也可以看出,两网站评分有一定的相关关系。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值