《python每天一小段》--12 数据可视化《1》

2023-12-10 16:52

本文主要是介绍《python每天一小段》--12 数据可视化《1》,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

欢迎阅读《Python每天一小段》系列!在本篇中,将使用Python Matplotlib实现数据可视化的简单图形。

文章目录

    • 一、概念
      • (1)安装matplotlib
      • (2)数据可视化实现步骤
    • 二、绘制简单的折线图
      • (1)简单的图表
      • (2)修改标签文字和线条粗细
      • (3)校正图形
      • (4)绘制单个点
      • (5)绘制一系列点
      • (6)自动计算
      • (7)删除数据点的轮廓
      • (8)修改颜色
      • (9)自定义颜色
      • (10)颜色映射
      • (11)自动保存
      • (12)绘制前 5 个整数的立方值

一、概念

Matplotlib是一个流行的Python数据可视化库,它提供了丰富的绘图功能,可以创建各种类型的图表,包括折线图、散点图、柱状图、饼图等。

要查看使用matplotlib可制作的各种图表,可访问http://matplotlib.org/

(1)安装matplotlib

pip install matplotlib

(2)数据可视化实现步骤

下面是对Matplotlib的详细解释以及如何实现数据可视化的一般步骤:

  1. 导入Matplotlib库:
    在Python脚本中,首先需要导入Matplotlib库。通常使用以下语句导入Matplotlib的pyplot模块:

    import matplotlib.pyplot as plt
    
  2. 创建图表:
    在开始绘图之前,需要创建一个图表对象。可以使用plt.figure()函数创建一个新的图表。

    plt.figure()
    
  3. 绘制图表:
    使用Matplotlib的各种绘图函数来绘制所需的图表。例如,使用plt.plot()函数绘制折线图,使用plt.scatter()函数绘制散点图,使用plt.bar()函数绘制柱状图等。

    x = [1, 2, 3, 4, 5]
    y = [10, 8, 6, 4, 2]
    plt.plot(x, y)
    
  4. 添加标签和标题:
    可以使用plt.xlabel()plt.ylabel()plt.title()函数为图表添加轴标签和标题。

    plt.xlabel('X轴')
    plt.ylabel('Y轴')
    plt.title('折线图')
    
  5. 自定义图表样式:
    可以使用各种Matplotlib函数来自定义图表的样式,如设置线条颜色、线型、标记样式、图例等。

    plt.plot(x, y, color='red', linestyle='--', marker='o', label='数据')
    plt.legend()
    
  6. 显示图表:
    使用plt.show()函数显示图表。

    plt.show()
    

以上是一个简单的数据可视化的流程。当然,Matplotlib还提供了许多其他功能,如子图、网格、颜色映射等,可以根据需要进行使用和定制。

除了Matplotlib,还有其他一些数据可视化工具可以使用,如Seaborn、Plotly、Bokeh等。每个工具都有其特点和适用场景,可以根据具体需求选择合适的工具来实现数据可视化。

python代码:

import matplotlib.pyplot as pltplt.figure()
x = [1,2,3,4,5]
y = [10,8,6,4,2]
plt.plot(x,y)
#plt.scatter(x,y)
#plt.bar(x,y)plt.title("x,y table",fontsize=24)
plt.xlabel('x轴')
plt.ylabel('y轴')plt.plot(x,y,color='red',linestyle='--',marker='o',label='数据')
plt.legend()plt.show()

生成图表:

在这里插入图片描述

二、绘制简单的折线图

(1)简单的图表

1、首先导入了模块pyplot,并给它指定了别名plt,以免反复输入pyplot

2、创建了一个列表,在其中存储了前述平方数,再将这个列表传递给函数plot(),这个函数尝试根据这些数字绘制出有意义的图形。

3、plt.show()打开matplotlib查看器,并显示绘制的图形

import matplotlib.pyplot as pltsquares = [1,4,9,16,25]
plt.plot(squares)
plt.show()

图表:

在这里插入图片描述

(2)修改标签文字和线条粗细

import matplotlib.pyplot as pltsquares = [1,4,9,16,25]
plt.plot(squares,linewidth=5)#设置图标标题,并给坐标轴加上标签
plt.title("Square Numbers", fontsize=24)
plt.xlabel("Value",fontsize=14)
plt.ylabel("Square of Value",fontsize=14)#设置刻度标记的大小
plt.tick_params(axis='both',labelsize=14)
plt.show()

图标:

在这里插入图片描述

(3)校正图形

import matplotlib.pyplot as pltinput_values = [1,2,3,4,5]
squares = [1,4,9,16,25]
plt.plot(input_values,squares,linewidth=5)#设置图标标题,并给坐标轴加上标签
plt.title("Square Numbers", fontsize=24)
plt.xlabel("Value",fontsize=14)
plt.ylabel("Square of Value",fontsize=14)#设置刻度标记的大小
plt.tick_params(axis='both',labelsize=14)
plt.show()

在这里插入图片描述

(4)绘制单个点

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

import matplotlib.pyplot as pltplt.scatter(2,4)
plt.show()

在这里插入图片描述

添加标题,给轴加标签

import matplotlib.pyplot as pltplt.scatter(2,4)plt.scatter(2,4,s=200)plt.title("Square Number",fontsize=24)
plt.xlabel("Value",fontsize=14)
plt.ylabel("Square of Value" ,fontsize=14)#设置刻度标记的大小
plt.tick_params(axis='both',which='major',labelsize=14)plt.show

图表:

在这里插入图片描述

(5)绘制一系列点

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

import matplotlib.pyplot as pltx_values = [1,2,3,4,5]
y_values = [1,4,9,16,25]plt.scatter(x_values,y_values,s=100)#设置图标标题及坐标轴指定标签plt.title("Square Number",fontsize=24)
plt.title("Value",fontsize=14)
plt.title("Square of Value",fontsize=14)#设置刻度标记大小
plt.tick_params(axis='both',which='major',labelsize=14)
plt.show()

图表:

在这里插入图片描述

(6)自动计算

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

import matplotlib.pyplot as pltx_values = list(range(1,1001))
y_values = [x**2 for x in x_values]plt.scatter(x_values,y_values,s=40)#设置图标并给坐标轴加上标签
plt.title("Square Number",fontsize=24)
plt.title("Value",fontsize=14)
plt.title("Square of Value",fontsize=14)#设置刻度标记大小
plt.tick_params(axis='both',which='major',labelsize=14)#设置每个坐标轴的取值范围
plt.axis([0,1100,0,1100000])plt.show()

图表:

在这里插入图片描述

(7)删除数据点的轮廓

matplotlib允许你给散点图中的各个点指定颜色。默认为蓝色点和黑色轮廓,在散点图包含的数据点不多时效果很好。但绘制很多点时,黑色轮廓可能会粘连在一起。

要删除数据点的轮廓,可在调用scatter()时传递实参:edgecolor='none'

plt.scatter(x_values,y_values,edgecolor='none',s=40)

在这里插入图片描述

(8)修改颜色

修改数据点的颜色,可向scatter()传递参数c,并将其设置为要使用的颜色的名称

plt.scatter(x_values,y_values,c='red',edgecolor='none',s=40)

图表:

在这里插入图片描述

(9)自定义颜色

使用RGB颜色模式自定义颜色。要指定自定义颜色,可传递参数c,并将其设置为一个元组,其中包含三个0~1之间的小数值,它们分别表示红色、绿色和蓝色分量。

plt.scatter(x_values,y_values,c=(0,0,0.8),edgecolor='none',s=40)

图表:

创建一个由淡蓝色点组成的散点图:

在这里插入图片描述

值越接近0,指定的颜色越深,值越接近1,指定的颜色越浅

(10)颜色映射

颜色映射(colormap)是一系列颜色,它们从起始颜色渐变到结束颜色。在可视化中,颜色映射用于突出数据的规律,例如,你可能用较浅的颜色来显示较小的值,并使用较深的颜色来显示较大的值。

模块pyplot内置了一组颜色映射。要使用这些颜色映射,你需要告诉pyplot该如何设置数据集中每个点的颜色。下面演示了如何根据每个点的y值来设置其颜色:

plt.scatter(x_values,y_values,c=y_values,cmap=plt.cm.Blues,edgecolor='none',s=40)

图表:

在这里插入图片描述

将参数c设置成了一个y值列表,并使用参数cmap告诉pyplot使用哪个颜色映射,代码将y值较小的点显示为浅蓝色,并将y值较大的点显示为深蓝色。

要了解pyplot中所有的颜色映射,请访问http://matplotlib.org/,单击Examples,向下滚动到Color Examples,再单击colormaps_reference。

(11)自动保存

要让程序自动将图表保存到文件中,可将对plt.show()的调用替换为对plt.savefig()的调用

plt.savefig("squares.plot.png",bbox_inches='tight')

在这里插入图片描述

(12)绘制前 5 个整数的立方值

import matplotlib.pyplot as plt#绘制前5个整数的立方值
x = [1,2,3,4,5]
y = [x[i] ** 3 for i in range(len(x))]plt.plot(x,y)
plt.xlabel("x")
plt.ylabel("x^3")
plt.show()

在这里插入图片描述

参考引用《Python从入门到实践》

这篇关于《python每天一小段》--12 数据可视化《1》的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/477702

相关文章

SpringBoot分段处理List集合多线程批量插入数据方式

《SpringBoot分段处理List集合多线程批量插入数据方式》文章介绍如何处理大数据量List批量插入数据库的优化方案:通过拆分List并分配独立线程处理,结合Spring线程池与异步方法提升效率... 目录项目场景解决方案1.实体类2.Mapper3.spring容器注入线程池bejsan对象4.创建

PHP轻松处理千万行数据的方法详解

《PHP轻松处理千万行数据的方法详解》说到处理大数据集,PHP通常不是第一个想到的语言,但如果你曾经需要处理数百万行数据而不让服务器崩溃或内存耗尽,你就会知道PHP用对了工具有多强大,下面小编就... 目录问题的本质php 中的数据流处理:为什么必不可少生成器:内存高效的迭代方式流量控制:避免系统过载一次性

Python的Darts库实现时间序列预测

《Python的Darts库实现时间序列预测》Darts一个集统计、机器学习与深度学习模型于一体的Python时间序列预测库,本文主要介绍了Python的Darts库实现时间序列预测,感兴趣的可以了解... 目录目录一、什么是 Darts?二、安装与基本配置安装 Darts导入基础模块三、时间序列数据结构与

Python正则表达式匹配和替换的操作指南

《Python正则表达式匹配和替换的操作指南》正则表达式是处理文本的强大工具,Python通过re模块提供了完整的正则表达式功能,本文将通过代码示例详细介绍Python中的正则匹配和替换操作,需要的朋... 目录基础语法导入re模块基本元字符常用匹配方法1. re.match() - 从字符串开头匹配2.

Python使用FastAPI实现大文件分片上传与断点续传功能

《Python使用FastAPI实现大文件分片上传与断点续传功能》大文件直传常遇到超时、网络抖动失败、失败后只能重传的问题,分片上传+断点续传可以把大文件拆成若干小块逐个上传,并在中断后从已完成分片继... 目录一、接口设计二、服务端实现(FastAPI)2.1 运行环境2.2 目录结构建议2.3 serv

C#实现千万数据秒级导入的代码

《C#实现千万数据秒级导入的代码》在实际开发中excel导入很常见,现代社会中很容易遇到大数据处理业务,所以本文我就给大家分享一下千万数据秒级导入怎么实现,文中有详细的代码示例供大家参考,需要的朋友可... 目录前言一、数据存储二、处理逻辑优化前代码处理逻辑优化后的代码总结前言在实际开发中excel导入很

通过Docker容器部署Python环境的全流程

《通过Docker容器部署Python环境的全流程》在现代化开发流程中,Docker因其轻量化、环境隔离和跨平台一致性的特性,已成为部署Python应用的标准工具,本文将详细演示如何通过Docker容... 目录引言一、docker与python的协同优势二、核心步骤详解三、进阶配置技巧四、生产环境最佳实践

Python一次性将指定版本所有包上传PyPI镜像解决方案

《Python一次性将指定版本所有包上传PyPI镜像解决方案》本文主要介绍了一个安全、完整、可离线部署的解决方案,用于一次性准备指定Python版本的所有包,然后导出到内网环境,感兴趣的小伙伴可以跟随... 目录为什么需要这个方案完整解决方案1. 项目目录结构2. 创建智能下载脚本3. 创建包清单生成脚本4

Python实现Excel批量样式修改器(附完整代码)

《Python实现Excel批量样式修改器(附完整代码)》这篇文章主要为大家详细介绍了如何使用Python实现一个Excel批量样式修改器,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一... 目录前言功能特性核心功能界面特性系统要求安装说明使用指南基本操作流程高级功能技术实现核心技术栈关键函

python获取指定名字的程序的文件路径的两种方法

《python获取指定名字的程序的文件路径的两种方法》本文主要介绍了python获取指定名字的程序的文件路径的两种方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要... 最近在做项目,需要用到给定一个程序名字就可以自动获取到这个程序在Windows系统下的绝对路径,以下