Python酷库之旅-第三方库Pandas(138)

Python酷库之旅-第三方库Pandas(138)

目录

一、用法精讲

621、pandas.plotting.lag_plot方法

621-1、语法

621-2、参数

621-3、功能

621-4、返回值

621-5、说明

621-6、用法

621-6-1、数据准备

621-6-2、代码示例

621-6-3、结果输出

622、pandas.plotting.parallel_coordinates方法

622-1、语法

622-2、参数

622-3、功能

622-4、返回值

622-5、说明

622-6、用法

622-6-1、数据准备

622-6-2、代码示例

622-6-3、结果输出

623、pandas.plotting.plot_params方法

623-1、语法

623-2、参数

623-3、功能

623-4、返回值

623-5、说明

623-6、用法

623-6-1、数据准备

623-6-2、代码示例

623-6-3、结果输出

624、pandas.plotting.radviz方法

624-1、语法

624-2、参数

624-3、功能

624-4、返回值

624-5、说明

624-6、用法

624-6-1、数据准备

624-6-2、代码示例

624-6-3、结果输出

625、pandas.plotting.register_matplotlib_converters方法

625-1、语法

625-2、参数

625-3、功能

625-4、返回值

625-5、说明

625-6、用法

625-6-1、数据准备

625-6-2、代码示例

625-6-3、结果输出

二、推荐阅读

1、Python筑基之旅

2、Python函数之旅

3、Python算法之旅

4、Python魔法之旅

5、博客个人主页

一、用法精讲

621、pandas.plotting.lag_plot方法
621-1、语法
# 621、pandas.plotting.lag_plot方法 pandas.plotting.lag_plot(series, lag=1, ax=None, **kwds) Lag plot for time series. Parameters: series Series The time series to visualize. lag int, default 1 Lag length of the scatter plot. ax Matplotlib axis object, optional The matplotlib axis object to use. **kwds Matplotlib scatter method keyword arguments. Returns: matplotlib.axes.Axes.
621-2、参数

621-2-1、series(必须):series,表示要绘制滞后图的Pandas序列(Series)。

621-2-2、lag(可选,默认值为1):整数,表示滞后量,即当前值与前多少个时间点的值进行比较。默认值为1,表示与上一个时间点比较。

621-2-3、ax(可选,默认值为None):matplotlib.axes.Axes,表示绘图的matplotlib轴对象,如果不提供,则使用当前活动的轴或创建一个新的轴。

621-2-4、**kwds(可选):其他关键字参数,这些参数将被传递给底层的绘图函数(如matplotlib.pyplot.scatter或matplotlib.pyplot.plot),允许用户自定义图形的外观,如颜色、标记样式等。

621-3、功能

        滞后图通过绘制序列的当前值(y轴)与其滞后值(x轴)的散点图来工作,如果数据中存在某种模式(如周期性或趋势),则这些模式可能会在滞后图中表现为某种形状(如直线、曲线或循环)。

621-4、返回值

        返回包含滞后图的matplotlib轴对象,这允许用户进一步自定义图形,如添加标题、标签或调整轴的范围。

621-5、说明

        无

621-6、用法
621-6-1、数据准备
621-6-2、代码示例
# 621、pandas.plotting.lag_plot方法 import pandas as pd import matplotlib.pyplot as plt # 创建一个示例时间序列数据 data = pd.Series([1, 2, 3, 4, 5, 6, 7, 8, 9, 10]) # 使用lag_plot绘制滞后图,滞后量为1 pd.plotting.lag_plot(data, lag=1) # 显示图形 plt.show()
621-6-3、结果输出
# 621、pandas.plotting.lag_plot方法 见图1

图1:

 

622、pandas.plotting.parallel_coordinates方法
622-1、语法
# 622、pandas.plotting.parallel_coordinates方法 pandas.plotting.parallel_coordinates(frame, class_column, cols=None, ax=None, color=None, use_columns=False, xticks=None, colormap=None, axvlines=True, axvlines_kwds=None, sort_labels=False, **kwargs) Parallel coordinates plotting. Parameters: frame DataFrame class_column str Column name containing class names. cols list, optional A list of column names to use. ax matplotlib.axis, optional Matplotlib axis object. color list or tuple, optional Colors to use for the different classes. use_columns bool, optional If true, columns will be used as xticks. xticks list or tuple, optional A list of values to use for xticks. colormap str or matplotlib colormap, default None Colormap to use for line colors. axvlines bool, optional If true, vertical lines will be added at each xtick. axvlines_kwds keywords, optional Options to be passed to axvline method for vertical lines. sort_labels bool, default False Sort class_column labels, useful when assigning colors. **kwargs Options to pass to matplotlib plotting method. Returns: matplotlib.axes.Axes.
622-2、参数

622-2-1、frame(必须):DataFrame,表示要绘制平行坐标图的数据框(DataFrame)。

622-2-2、class_column(必须):字符串或整数,表示数据框中用于区分不同类别的列名(或列索引),该参数是可选的,但如果提供了,它将用于为不同类别的数据点着色。

622-2-3、cols(可选,默认值为None):list-like,表示要在图中显示的列名(或列索引)列表,如果不提供,将使用数据框中除class_column之外的所有列。

622-2-4、ax(可选,默认值为None):matplotlib.axes.Axes,表示绘图的matplotlib轴对象,如果不提供,则使用当前活动的轴或创建一个新的轴。

622-2-5、color(可选,默认值为None):list-like或array-like,用于指定每个数据点颜色的列表或数组,如果提供了class_column,则通常不需要这个参数,因为颜色会自动根据类别分配。

622-2-6、use_columns(可选,默认值为False):布尔值,如果为True,则使用cols参数中的列名作为x轴的刻度标签,而不是使用列的索引位置。

622-2-7、xticks(可选,默认值为None):list-like,自定义x轴的刻度位置,这可以用于调整刻度标签的显示。

622-2-8、colormap(可选,默认值为None):str或Colormap,用于映射类别到颜色的颜色映射表,如果提供了class_column,则可以使用这个参数来自定义颜色映射。

622-2-9、axvlines(可选,默认值为True):布尔值,是否在每个类别的每个维度上绘制垂直线,以突出显示类别之间的分隔。

622-2-10、axvlines_kwds(可选,默认值为None):字典,用于绘制垂直线的关键字参数字典,这些参数将被传递给matplotlib.pyplot.axvline函数。

622-2-11、sort_labels(可选,默认值为False):布尔值,是否对类别标签进行排序,如果为True,则类别标签将按字母顺序(对于字符串)或数值顺序(对于数字)排序。

622-2-12、**kwargs(可选):其他关键字参数,这些参数将被传递给底层的绘图函数,允许用户自定义图形的外观,如线条样式、标记样式等。

622-3、功能

        平行坐标图主要用于多维数据的可视化,通过连接不同维度上的数据点来揭示数据之间的关联和模式,它可以用于数据探索、聚类分析、特征选择等场景。

622-4、返回值

        返回包含平行坐标图的matplotlib轴对象,这允许用户进一步自定义图形,如添加标题、标签、图例或调整轴的范围和刻度。

622-5、说明

        无

622-6、用法
622-6-1、数据准备
622-6-2、代码示例
# 622、pandas.plotting.parallel_coordinates方法 import pandas as pd import matplotlib.pyplot as plt from pandas.plotting import parallel_coordinates # 创建一个示例数据框 data = { 'feature1': [1, 2, 3, 4, 5], 'feature2': [5, 4, 3, 2, 1], 'feature3': [2, 3, 4, 5, 6], 'class': ['A', 'A', 'B', 'B', 'C'] } df = pd.DataFrame(data) # 绘制平行坐标图 parallel_coordinates(df, 'class', colormap='viridis') # 显示图形 plt.show()
622-6-3、结果输出
# 622、pandas.plotting.parallel_coordinates方法 见图2

图2:

 

623、pandas.plotting.plot_params方法
623-1、语法
# 623、pandas.plotting.plot_params方法 pandas.plotting.plot_params = {'xaxis.compat': False} Stores pandas plotting options. Allows for parameter aliasing so you can just use parameter names that are the same as the plot function parameters, but is stored in a canonical format that makes it easy to breakdown into groups later.
623-2、参数

623-2-1、xaxis.compat(可选,默认值为False):

  • 这个参数控制x轴的兼容性模式,当设置为True时,Pandas会尝试使x轴的标签与Matplotlib的默认行为兼容。这通常意味着,如果x轴是日期时间类型,Pandas会尝试以Matplotlib的默认方式格式化日期时间标签。然而,这种兼容性模式有时可能会导致意外的行为,特别是当Pandas和Matplotlib的版本不同步时。
  • 当设置为False时,Pandas会使用自己的方式来处理x轴的标签,这通常意味着更直接和可预测的行为,特别是当处理日期时间数据时。
623-3、功能

        允许用户全局设置绘图参数,从而简化了绘图过程,通过修改这个字典中的值,用户可以改变Pandas绘图函数的默认行为,而无需在每次调用时都传递额外的参数。

623-4、返回值

        用于存储全局绘图参数,修改这个字典不会返回任何值;相反,它会改变Pandas绘图函数的默认行为。

623-5、说明

        无

623-6、用法
623-6-1、数据准备
623-6-2、代码示例
# 623、pandas.plotting.plot_params方法 import pandas as pd import matplotlib.pyplot as plt # 设置全局绘图参数 pd.plotting.plot_params['xaxis.compat'] = False # 创建一个示例数据框 df = pd.DataFrame({ 'Date': pd.date_range(start='2024-01-01', periods=10, freq='D'), 'Value': range(10) }) # 将日期列设置为索引 df.set_index('Date', inplace=True) # 绘制折线图 df.plot() # 显示图形 plt.show()
623-6-3、结果输出
# 623、pandas.plotting.plot_params方法 见图3

图3:

 

624、pandas.plotting.radviz方法
624-1、语法
# 624、pandas.plotting.radviz方法 pandas.plotting.radviz(frame, class_column, ax=None, color=None, colormap=None, **kwds) Plot a multidimensional dataset in 2D. Each Series in the DataFrame is represented as a evenly distributed slice on a circle. Each data point is rendered in the circle according to the value on each Series. Highly correlated Series in the DataFrame are placed closer on the unit circle. RadViz allow to project a N-dimensional data set into a 2D space where the influence of each dimension can be interpreted as a balance between the influence of all dimensions. More info available at the original article describing RadViz. Parameters: frameDataFrame Object holding the data. class_columnstr Column name containing the name of the data point category. axmatplotlib.axes.Axes, optional A plot instance to which to add the information. colorlist[str] or tuple[str], optional Assign a color to each category. Example: [‘blue’, ‘green’]. colormapstr or matplotlib.colors.Colormap, default None Colormap to select colors from. If string, load colormap with that name from matplotlib. **kwds Options to pass to matplotlib scatter plotting method. Returns: matplotlib.axes.Axes.
624-2、参数

624-2-1、frame(必须):DataFrame,包含要可视化的数据,通常为一个pandas的DataFrame,其中每一列代表一个维度,行代表样本。

624-2-2、class_column(必须):字符串,指定DataFrame中用于分类的数据列名,用于区分不同的类别。

624-2-3、ax(可选,默认值为None):matplotlib.axes.Axes或None,表示可选择的轴对象,如果提供,则在该轴上绘图;如果为None,将会自动创建一个新的图形。

624-2-4、color(可选,默认值为None):字符串或列表或字典,用于指定不同类别的颜色,可以是颜色名、十六进制颜色代码,或是一个字典映射类别到颜色的值。

624-2-5、colormap(可选,默认值为None):matplotlib Colormap,如果指定了色彩映射,则使用该映射为数据着色,一般在需要为连续值着色时使用。

624-2-6、**kwds(可选):其他关键字参数,通常用于控制绘图的细节,例如:marker、s(大小)等 matplotlib 参数。

624-3、功能

        通过径向坐标系展示高维数据,使得不同类别的样本可以通过颜色和分布形状直观区分,它可以揭示数据的模式、聚类情况及类别之间的关系。

624-4、返回值

        返回绘制图形的Axes对象,便于后续的进一步操作和调整。

624-5、说明

        无

624-6、用法
624-6-1、数据准备
624-6-2、代码示例
# 624、pandas.plotting.radviz方法 import pandas as pd import matplotlib.pyplot as plt # 示例数据 data = { 'feature1': [1, 2, 3, 4], 'feature2': [4, 3, 2, 1], 'class': ['A', 'B', 'A', 'B'] } df = pd.DataFrame(data) # 使用radviz可视化 ax = pd.plotting.radviz(df, 'class', color=['red', 'blue']) plt.show()
624-6-3、结果输出
# 624、pandas.plotting.radviz方法 见图4

图4:

 

625、pandas.plotting.register_matplotlib_converters方法
625-1、语法
# 625、pandas.plotting.register_matplotlib_converters方法 pandas.plotting.register_matplotlib_converters() Register pandas formatters and converters with matplotlib. This function modifies the global matplotlib.units.registry dictionary. pandas adds custom converters for pd.Timestamp pd.Period np.datetime64 datetime.datetime datetime.date datetime.time
625-2、参数

        无

625-3、功能

        自动注册pandas的日期时间转换器,以便在Matplotlib中正确渲染时间序列数据。这样,日期和时间类型的数据可以分配到合适的轴上,通过调用这个函数,可以确保在使用Matplotlib绘制含有日期时间数据的图表时,绘图函数能够正确处理pandas的Timestamp或DatatimeIndex类型,而不会出现类型不匹配的问题。

625-4、返回值

        该函数不返回任何值,它的效果是通过修改全局环境来确保后续的绘图操作与时间序列数据保持良好的兼容性。

625-5、说明

        无

625-6、用法
625-6-1、数据准备
625-6-2、代码示例
# 625、pandas.plotting.register_matplotlib_converters方法 import pandas as pd import matplotlib.pyplot as plt # 注册时间序列转换器 pd.plotting.register_matplotlib_converters() # 示例数据 dates = pd.date_range('2024-01-01', periods=5) values = [1, 2, 3, 4, 5] data = pd.Series(values, index=dates) # 绘制图形 data.plot() plt.show()
625-6-3、结果输出
# 625、pandas.plotting.register_matplotlib_converters方法 见图5

图5:

 

二、推荐阅读

1、Python筑基之旅
2、Python函数之旅
3、Python算法之旅
4、Python魔法之旅
5、博客个人主页

Read more

计算机毕业设计源码:基于Python的豆瓣音乐可视化分析系统 Flask Echarts 人工智能 大数据(建议收藏)✅

计算机毕业设计源码:基于Python的豆瓣音乐可视化分析系统 Flask Echarts 人工智能 大数据(建议收藏)✅

博主介绍:✌全网粉丝50W+,前互联网大厂软件研发、集结硕博英豪成立软件开发工作室,专注于计算机相关专业项目实战6年之久,累计开发项目作品上万套。凭借丰富的经验与专业实力,已帮助成千上万的学生顺利毕业,选择我们,就是选择放心、选择安心毕业✌ > 🍅想要获取完整文章或者源码,或者代做,拉到文章底部即可与我联系了。🍅 点击查看作者主页,了解更多项目! 🍅感兴趣的可以先收藏起来,点赞、关注不迷路,大家在毕设选题,项目以及论文编写等相关问题都可以给我留言咨询,希望帮助同学们顺利毕业 。🍅 1、毕业设计:2026年计算机专业毕业设计选题汇总(建议收藏)✅ 2、最全计算机大数据专业毕业设计选题大全(建议收藏)✅ 1、项目介绍 技术栈 本系统采用Python语言进行开发,基于Flask框架构建后端架构,使用MySQL数据库存储豆瓣音乐数据及用户信息。前端通过HTML、CSS、JavaScript结合Echarts实现数据可视化展示,数据采集通过爬虫技术从豆瓣音乐页面抓取,数据分析采用Python进行统计与处理。 功能模块 · 首页-数据概况 · 音乐数据中心 · 音乐数据搜索

By Ne0inhk
Python开发从入门到精通:异步编程与协程

Python开发从入门到精通:异步编程与协程

《Python开发从入门到精通》设计指南第二十一篇:异步编程与协程 一、学习目标与重点 💡 学习目标:掌握Python异步编程的基本概念和方法,包括协程、任务调度、事件循环等;学习asyncio、aiohttp等核心库的使用;通过实战案例开发异步应用程序。 ⚠️ 学习重点:协程的定义与使用、任务调度、事件循环、asyncio库、aiohttp库、异步编程实战。 21.1 异步编程概述 21.1.1 什么是异步编程 异步编程是一种并发编程方式,通过非阻塞的操作提高程序的执行效率。在异步编程中,程序可以在等待I/O操作完成时继续执行其他任务,而不需要阻塞等待。 21.1.2 异步编程的优势 * 提高执行效率:在等待I/O操作完成时,程序可以继续执行其他任务。 * 降低资源消耗:减少了线程切换的开销。 * 简化代码结构:通过协程和任务调度,代码结构更加简洁。 21.1.3 异步编程的应用场景

By Ne0inhk
新手向:C语言、Java、Python 的选择与未来指南

新手向:C语言、Java、Python 的选择与未来指南

语言即工具,选对方向比埋头苦学更重要 你好,编程世界的新朋友!当你第一次踏入代码的宇宙,面对形形色色的编程语言,是否感到眼花缭乱?今天我们就来聊聊最主流的三种编程语言——C语言、Java 和 Python——它们各自是谁,适合做什么,以及未来十年谁能带你走得更远。 一、编程世界的三把钥匙:角色定位 如果把编程比作建造房屋,那么: * C语言是钢筋骨架:诞生于1972年,它直接与计算机硬件“对话”,负责构建最基础的支撑结构。 * Java是精装套房:1995年问世,以“一次编写,到处运行”闻名,擅长打造稳定、可复用的功能模块。 * Python是智能管家:1991年出生却在近十年大放异彩,像一位高效助手,用最少的指令完成复杂任务13。 二、核心差异对比:从底层到应用 1. 语言类型与设计哲学 * C语言:属于面向过程的编译型语言。代码在执行前需全部翻译成机器指令,运行效率极高,但需要开发者手动管理内存(类似自己打扫房间)15。 * Java:

By Ne0inhk
2026年Python+AI学习路线完整指南:从零基础到实战专家

2026年Python+AI学习路线完整指南:从零基础到实战专家

✨道路是曲折的,前途是光明的! 📝 专注C/C++、Linux编程与人工智能领域,分享学习笔记! 🌟 感谢各位小伙伴的长期陪伴与支持,欢迎文末添加好友一起交流! 📊 目录 * 为什么选择Python+AI * AI技术领域分布 * 完整学习路径 * 分阶段学习指南 * 实战代码示例 * 学习资源推荐 * 常见问题解答 为什么选择Python+AI? Python已成为人工智能领域最主流的编程语言,根据Stack Overflow 2024年开发者调查,Python在AI/ML领域的使用率超过85%。 Python在AI领域的优势 优势说明🐍 语法简洁上手快,专注算法本身而非语法细节📦 生态丰富NumPy、Pandas、PyTorch等成熟库👥 社区活跃海量教程、开源项目和问题解答🔧 工具完善Jupyter、Colab等优秀开发环境🚀 部署便捷Flask/FastAPI快速构建AI服务 AI技术领域分布 了解AI各领域的占比,帮助你更好地规划学习重点: 35%30%15%12%5%3%2025年AI技术领域市场需求分布机器

By Ne0inhk