matplotlib 散点图绘制指南:从基础到美化

0 下载量 127 浏览量 更新于2024-08-31 收藏 115KB PDF 举报
在使用Python的数据可视化库matplotlib进行数据展示时,scatter方法是一种常用且重要的图形绘制手段。scatter函数用于创建二维散点图,适用于表示两个变量之间的关系或数据点的分布情况。本篇文章将详细介绍如何利用matplotlib的scatter方法绘制散点图,并提供两种不同的示例。 首先,我们来看最简单的散点图绘制。在这个例子中,数据分为两列,一列是X坐标(如飞行常客里程数),另一列是Y坐标(如游戏时间百分比)。通过以下代码: ```python import matplotlib.pyplot as plt def plot_picture(): file = "data.txt" # 假设数据文件名 xlist = [] ylist = [] with open(file, "r") as f: for line in f.readlines(): line = line.strip().split() if len(line) != 2 or int(line[1]) < 100000: continue x, y = int(line[0]), int(line[1]) xlist.append(x) ylist.append(y) plt.xlabel('X - 航班里程数') plt.ylabel('Y - 游戏时间百分比') plt.scatter(xlist, ylist) # 使用scatter方法绘制散点 plt.show() ``` 这段代码首先读取数据文件,然后根据指定条件筛选数据,最后使用scatter函数将筛选后的数据点在坐标轴上呈现为散点图。这有助于快速识别数据点之间的关系和分布模式。 其次,文章提到了提升绘图美观性的另一种方式,这里以更复杂的数据集为例,比如飞行里程数、游戏时间、冰淇淋消费量与个人魅力等级之间的关系。在这个场景下,X轴代表飞行里程数,Y轴代表游戏时间百分比,而颜色或形状可能根据魅力等级进行区分。这可以通过设置额外的参数,如color或c参数,来实现: ```python # 更复杂的数据格式示例 data = [ [409208.32, 0.95, 3], # 第三列为魅力等级 [144887.15, 1.67, 2], [260521.44, 0.80, 1], # 更多数据... ] # 绘制带有不同颜色或形状的散点图 plt.scatter(data[:, 0], data[:, 1], c=data[:, 2], cmap='viridis', s=50, alpha=0.8, label='魅力等级') # 添加图例和美观调整 plt.colorbar(label='魅力等级') plt.title('飞行里程数与游戏时间关系 (按魅力等级区分)') plt.legend() plt.xlabel('飞行里程数') plt.ylabel('游戏时间百分比') plt.show() ``` 在这个例子中,通过设置c参数来根据魅力等级赋予不同的颜色,`cmap`参数定义了颜色映射,`s`参数调整点的大小,`alpha`参数控制透明度,从而创建了一个更具表现力的散点图。 总结来说,matplotlib的scatter方法提供了丰富的参数,帮助我们根据实际需求定制散点图的外观和含义。通过这两个示例,读者能够掌握如何在Python中使用matplotlib创建基本和定制化的散点图,这对于数据分析师和数据可视化爱好者来说是非常实用的知识。