数据可视化主要旨在借助于图形化手段,清晰有效地传达与沟通信息,它与信息图形、信息可视化、科学可视化以及统计图形密切相关。
当前,在研究、教学和数据开发领域,数据可视化是一个极为活跃而又关键的方面。现代企业使用各种可视化技术来理解数据并从中获得洞察力,从而做出数据驱动的业务决策。也有很多可视化工具可用,例如 Tableau、Power BI、Looker、Qlik Sense 等等。
在本文中,我将分享8种常用的 Python 可视化图表,介绍它们的最佳使用场景,同时分享一个实战案例,欢迎大家收藏学习,喜欢点赞支持。文末提供技术交流群,欢迎畅聊。
当数据以简单的可视化的格式呈现时,数据更有意义并且更容易理解,因为人眼很难从原始数据中解读模式、趋势和季节性,因此,数据被可视化以了解不同参数的行为。
这是了解我们的定量领域在各种类别中的表现的最简单的图表之一,它用于比较。
从上面的柱状图可以看出,技术类的销售额较高,办公用品的销售额最少。
上图是一个条形图,显示 L 类别的表现更好。
散点图和气泡图帮助我们了解变量如何分布在所考虑的范围内。 它可用于识别模式、异常值的存在以及两个变量之间的关系。
我们可以看到,随着折扣的增加,利润也在减少。
当必须呈现与时间相关的数据时,它是首选。 它最适合分析趋势。
从上图中,我们可以看到销售额在几个月内呈上升趋势,但 7 月份突然下降,而 11 月份的销售额最高。
直方图是一种频率图,用于记录数据集中某个条目的出现次数。 当您想了解系列的分布时,它很有用。
箱线图可以有效地总结大数据的分布。 他们使用百分位数来划分数据范围。 这有助于我们了解低于或高于所选数据点的数据点。 它帮助我们识别数据中的异常值。
箱线图将整个数据分为三类
当我们要查找数据的组成时,下述图表是最好的。
当我们想要检查变量之间是否存在相关性时,它是最优选的图表。
这里正值表示正相关,负值表示负相关。 颜色表示相关的强度,颜色越深正相关越高,颜色越浅负相关越高。
Python 提供了各种以图形方式理解数据的库,例如 Matplotlib 和 Seaborn 等。Anubhav 是一家以产品为基础的公司,销售不同种类的产品。 让我们探索数据以找出一段时间内的销售额,哪个产品类别/子类别的销售额最高,利润与折扣增加的关系。
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
import warnings
warnings.filterwarnings ('ignore')
sales=pd.read_excel('Maven Supplies Raw.xlsx',skiprows=3)
sales.head(2)
sales.info()
sales.describe()
sales.columns
首先,探索销售额百分比的类别组成
sales.groupby(['Category'])['Sales'].sum().plot(kind='pie',autopct='%1.2f%%')
plt.title("Sales% of different category")
plt.ylabel(" ")
plt.show();
我们可以看到,与其他类别相比,技术表现更好。 数据中有很多子类别,让我们看看不同子类别的表现如何。
plt.figure(figsize=(10,3))
sales.groupby(['Sub-Category'])['Sales'].sum().sort_values(ascending=False).plot(kind='bar',color='seagreen')
plt.show();
我们可以看到,手机的销量最高。不同地区的销售额会有所不同, 让我们来看看
sales.groupby(['Region'])['Sales'].sum().sort_values(ascending=False).plot(kind='bar',color='seagreen')
plt.show();
西部地区销量高,南部地区销量最低。现在让我们看看各地区的利润表现如何
sales.groupby(['Region'])['Profit'].sum().sort_values(ascending=False).plot(kind='bar',color='seagreen')
plt.show();
与中部地区相比,在销售方面表现最差的南部地区表现更好。 热图让我们更好地了解不同变量如何相互关联。
plt.figure(figsize = (10, 5))
sns.heatmap(sales.corr(),annot=True,cmap="summer")
plt.show()
很明显,折扣与利润呈负相关。让我们解读一下折扣增加对利润的影响。
sns.scatterplot(x = 'Discount', y='Profit', data = sales ,color='seagreen')
plt.show;
我们可以看到,随着折扣的增加,利润也在减少。销售额不是恒定的,它会根据各种因素增加或减少。 让我们看看销售在不同月份的表现如何。
sales.groupby(['month'])['Sales'].sum().plot(kind='line',color='seagreen')
因此,我们可以说可视化说了很多,它总会有一些故事可以讲述,这有助于企业做出数据驱动的决策。
在本文中,我们讨论了各种图形及其用途、处理了一个数据集,以及如何使用 Python 库来可视化数据并从中理解。 通过可视化,我们很容易了解数据中的隐藏模式或趋势。 通过几个例子,我们可以看到图表有助于比较、容易理解。
欢迎转载、收藏、有所收获点赞支持一下!
目前开通了技术交流群,群友已超过2000人,添加时最好的备注方式为:来源+兴趣方向,方便找到志同道合的朋友