在数据科学领域,数据可视化技术已经成为获取洞察力的重要手段。然而,引入和适应新的可视化技术,以创造更具吸引力的图表,总是有益的。创建吸引人的图表是延长观众记忆周期的一种方式。还有许多可视化技术尚未被发现和采用。
Andrews曲线是一种用于可视化多维数据模式的有用图表。Andrews曲线的概念由统计学家David F. Andrews在1972年开发。通过定义一个有限的傅里叶级数(即正弦曲线方程),可以可视化数据的差异。方程如下所示:
f(t) = ∑[A_k * sin(k * t + φ_k)]
其中x指的是数据中的每个维度,t的值范围从-π到π。
在Python中使用Pandas创建Andrews曲线:
import pandas as pd
import matplotlib.pyplot as plt
from pandas.plotting import andrews_curves
# 导入数据
df = pd.read_csv("iris.csv")
# 绘制Andrews曲线
plt.figure(figsize=(12,6))
andrews_curves(df, 'Species', colormap='YlOrRd')
plt.show()
执行上述代码后,将得到一个展示不同物种数据模式的Andrews曲线图。
雨云图是一种在2019年引入的独特数据可视化技术。它是一种稳健的可视化技术,结合了小提琴图、箱线图和散点图。因此,可以在一个图表中详细查看原始数据。这种绘图风格使雨云图比它单独组成的任何图表都要好。
在Python中创建雨云图,将使用一个名为ptitprince的库。雨云图由以下部分组成:
如何在Python中创建雨云图:
pip install ptitprince
import pandas as pd
import matplotlib.pyplot as plt
import ptitprince
# 导入数据
df = pd.read_csv("iris.csv")
# 绘制雨云图
plt.figure(figsize=(12,8))
ptitprince.RainCloud(data=df, x='Species', y='Sepal.Length', orient='h')
plt.show()
执行上述代码后,将得到一个展示不同物种萼片长度数据的雨云图。
pip install calmap
import matplotlib as mpl
import calmap
# 导入数据
df = pd.read_csv("currency.csv")
# 准备数据
df['Time'] = pd.to_datetime(df['Time'])
df.set_index('Time', inplace=True)
# 绘制日历热力图
calmap.calendarplot(df['2017']['GEMS_GEMS_SPENT'], cmap='OrRd', fig_kws={'figsize': (16,12)}, yearlabel_kws={'color':'black'})
plt.show()