📋 博主简介
- 💖 作者简介:大家好,我是wux_labs。😜
热衷于各种主流技术,热爱数据科学、机器学习、云计算、人工智能。
通过了TiDB数据库专员(PCTA)、TiDB数据库专家(PCTP)、TiDB数据库认证SQL开发专家(PCSD)认证。
通过了微软Azure开发人员、Azure数据工程师、Azure解决方案架构师专家认证。
对大数据技术栈Hadoop、Hive、Spark、Kafka等有深入研究,对Databricks的使用有丰富的经验。- 📝 个人主页:wux_labs,如果您对我还算满意,请关注一下吧~🔥
- 📝 个人社区:数据科学社区,如果您是数据科学爱好者,一起来交流吧~🔥
- 🎉 请支持我:欢迎大家 点赞👍+收藏??+吐槽📝,您的支持是我持续创作的动力~🔥
大家好!今天为大家分享的是《PySpark大数据分析实战》第3章第4节的内容:数据可视化图表Seaborn介绍。
数据可视化是一种提取有价值数据的有效方法,是数据分析和机器学习中非常重要的一环。它有助于提高分析效率,为机器学习模型提供可靠的数据基础。它可以帮助人们更直观地理解数据,更好地理解数据的趋势和变化,发现潜在的联系,从而帮助人们更好地构建机器学习模型,提高模型的准确性。此外,数据可视化可以帮助人们更好地发现数据中的噪声和异常。通过可视化,可以更容易地发现噪声数据和异常情况,从而减少机器学习模型的误差。常用的Python数据可视化工具包括Matplotlib、Seaborn、Pyecharts等。
Seaborn是Python中一个基于Matplotlib的数据可视化库,对Matplotlib进行了二次封装,提供了一些高级接口,可以让人们轻松地绘制统计图形,以便更好地理解数据分布和趋势。Seaborn旨在以数据可视化为中心来挖掘与理解数据,它提供的面向数据集制图函数主要是对行列索引和数组的操作,包含对整个数据集进行内部的语义映射与统计整合,以此生成富于信息的图表。Seaborn被广泛应用于数据分析、数据挖掘、统计建模等领域,因为它在细节、可扩展性和文档性方面都表现的非常优秀。相比于Matplotlib,Seaborn可以帮助人们更快速地完成高级绘图,同时还有更加美观和规范的配色方案。
Seaborn内置了多个数据集,可以方便人们进行实验和练习,同时也方便在实际工作中快速加载数据进行可视化分析。Seaborn内置的一些数据集包括:
要在项目中使用Seaborn,需要在Python环境中安装Seaborn,命令如下:
$ pip install seaborn
在使用时需要在Python脚本中导入seaborn,代码如下:
import seaborn as sns
Seaborn提供了lineplot()方法来绘制折线图,lineplot()方法的主要参数有:
在下面的案例中,使用Seaborn绘制了两幅折线图,代码如下:
plt.subplot(1, 2, 1)
fmri = sns.load_dataset("fmri")
sns.lineplot(x="timepoint", y="signal", data=fmri)
plt.subplot(1, 2, 2)
x = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
y = [2, 3, 6, 4, 5, 8, 5, 9, 7, 10]
sns.lineplot(x=x, y=y)
plt.show()
执行代码,绘制的图形如图所示。
Seaborn提供了barplot()方法来绘制柱状图,barplot()方法的主要参数有:
在下面的案例中,使用Seaborn绘制了两幅柱状图,代码如下:
plt.subplot(1, 2, 1)
titanic = sns.load_dataset('titanic')
sns.barplot(x='sex', y='survived', hue='class', data=titanic)
plt.subplot(1, 2, 2)
categories = ['A', 'B', 'C', 'D', 'E']
values = [23, 45, 12, 34, 32]
sns.barplot(x=categories, y=values)
plt.show()
执行代码,绘制的图形如图所示。
Seaborn提供了boxplot()方法来绘制箱型图,boxplot()方法的主要参数有:
在下面的案例中,使用Seaborn绘制了两幅箱型图,代码如下:
plt.subplot(1, 2, 1)
tips = sns.load_dataset('tips')
sns.boxplot(x='day', y='total_bill', data=tips)
plt.subplot(1, 2, 2)
data = pd.DataFrame(np.random.randint(1, 100, (200, 5)))
sns.boxplot(data=data)
plt.show()
执行代码,绘制的图形如图所示。
好了,感谢大家的关注,今天就分享到这里了,更多详细内容,请阅读原书或持续关注专栏。