怎样学习 R 绘图( 五 )

怎样学习 R 绘图

?
箱线图,又称盒式图,它是在 1977 年提出的,由五个数值点组成:最大值 (max)、最小值 (min)、中位数 (median) 和上下四分位数;它可以帮我们分析出数据的差异性、离散程度和异常值等。
在 Matplotlib 中,我们使用 plt.boxplot(x, labels=None) 函数
在 Seaborn 中,我们使用 sns.boxplot(x=None, y=None, data=https://www.zhihu.com/api/v4/questions/23566221/None) 函数;参数 data 为 DataFrame 类型,x、y 是 data 中的变量。
# 数据准备# 生成 0-1 之间的 10*4 维度数据data=np.random.normal(size=(10,4)) lables = # 用 Matplotlib 画箱线图plt.boxplot(data,labels=lables)plt.show()# 用 Seaborn 画箱线图df = pd.DataFrame(data, columns=lables)sns.boxplot(data=https://www.zhihu.com/api/v4/questions/23566221/df)plt.show()怎样学习 R 绘图

?
热力图是一种非常直观的多元变量分析方法。
我们一般使用 Seaborn 中的 sns.heatmap(data) 函数,其中 data 代表需要绘制的热力图数据。
# 数据准备flights = sns.load_dataset("flights")data=https://www.zhihu.com/api/v4/questions/23566221/flights.pivot(/u0026#39;year/u0026#39;,/u0026#39;month/u0026#39;,/u0026#39;passengers/u0026#39;)# 用 Seaborn 画热力图sns.heatmap(data)plt.show()怎样学习 R 绘图

蜘蛛图蜘蛛图是一种显示一对多关系的方法。在蜘蛛图中,一个变量相对于另一个变量的显著性是清晰可见的。假设我们想要给王者荣耀的玩家做一个战力图,指标一共包括推进、KDA、生存、团战、发育和输出。那该如何做呢?
这里我们需要使用 Matplotlib 来进行画图,首先设置两个数组:labels 和 stats。他们分别保存了这些属性的名称和属性值。
因为需要计算角度,所以我们要准备 angles 数组;又因为需要设定统计结果的数值,所以我们要设定 stats 数组。并且需要在原有 angles 和 stats 数组上增加一位,也就是添加数组的第一个元素。
代码中 flt.figure 是创建一个空白的 figure 对象---画幕布 ;add_subplot(111) 可以把画板划分成 1 行 1 列;
再用 ax.plot 和 ax.fill 进行连线以及给图形上色。
Matplotlib 对中文的显示不是很友好,我在网上下载了中文字体;(记得记载包from matplotlib.font_manager import FontProperties,否则报错!!!)
# 数据准备from matplotlib.font_manager import FontPropertieslabels=np.array()stats=# 画图数据准备,角度、状态值angles=np.linspace(0, 2*np.pi, len(labels), endpoint=False)stats=np.concatenate((stats,]))angles=np.concatenate((angles,]))# 用 Matplotlib 画蜘蛛图fig = plt.figure()ax = fig.add_subplot(111, polar=True) ax.plot(angles, stats, \u0026#39;o-\u0026#39;, linewidth=2)ax.fill(angles, stats, alpha=0.25)# 设置中文字体font = FontProperties(fname=r"C:\\Windows\\Fonts\\simhei.ttf", size=14) ax.set_thetagrids(angles * 180/np.pi, labels, FontProperties=font)plt.show()怎样学习 R 绘图


推荐阅读