sns.barplot(list(range(1,79)), pca_full.explained_variance_ratio_,ax=axes)
时间: 2023-06-19 20:03:11 浏览: 125
这段代码使用了Seaborn库中的barplot函数,用于绘制条形图。其中,第一个参数是x轴数据,使用了range函数生成了1到78的数字列表,第二个参数是y轴数据,使用了PCA对象pca_full的explained_variance_ratio_属性,表示每个主成分的方差解释率。第三个参数ax表示将绘制的图形放在哪个子图中,这里使用了一个名为axes的子图。
相关问题
Plat_Genre = pd.crosstab(data.Platform,data.Genre) Plat_Genre_sum = Plat_Genre.sum(axis=1).sort_values(ascending = False) Plat_Global_Sales = data.groupby('Platform')['Global_Sales'].sum().sort_values(ascending = False) Genre_Global_Sales = data.groupby('Genre')['Global_Sales'].sum().sort_values(ascending = False) f,ax = plt.subplots(1,3,figsize=(25,8),dpi=100) sns.barplot(Plat_Genre_sum.values,Plat_Genre_sum.index,ax=ax[0]) ax[0].set_title('Platform_Genre') sns.barplot(Plat_Global_Sales.values,Plat_Global_Sales.index,ax=ax[1]) ax[1].set_title('Platform_Global_Sales') sns.barplot(Genre_Global_Sales.values,Genre_Global_Sales.index,ax=ax[2]) ax[2].set_title('Genre_Global_Sales') plt.show()
这段代码使用了 `matplotlib` 和 `seaborn` 库来创建一个包含三个子图的图表,用于可视化数据集中的平台、类型和全球销售额的关系。
首先,通过 `pd.crosstab(data.Platform, data.Genre)` 创建了一个交叉表 `Plat_Genre`,用于统计不同平台和不同类型的游戏数量。
然后,通过 `Plat_Genre.sum(axis=1).sort_values(ascending=False)` 计算了每个平台上游戏总数,并按降序排序,结果存储在变量 `Plat_Genre_sum` 中。
接下来,通过 `data.groupby('Platform')['Global_Sales'].sum().sort_values(ascending=False)` 对平台进行分组并计算全球销售额总和,再按降序排序,结果存储在变量 `Plat_Global_Sales` 中。
最后,通过 `data.groupby('Genre')['Global_Sales'].sum().sort_values(ascending=False)` 对类型进行分组并计算全球销售额总和,再按降序排序,结果存储在变量 `Genre_Global_Sales` 中。
接下来的代码使用 `plt.subplots(1, 3, figsize=(25, 8), dpi=100)` 创建了一个包含三个子图的图表,并设置了图表的大小和分辨率。
然后,使用 `sns.barplot()` 分别绘制了三个子图,分别是平台与类型关系、平台与全球销售额关系、类型与全球销售额关系。通过 `Plat_Genre_sum.values` 和 `Plat_Genre_sum.index`,`Plat_Global_Sales.values` 和 `Plat_Global_Sales.index`,`Genre_Global_Sales.values` 和 `Genre_Global_Sales.index` 将数值和对应的标签传递给 `sns.barplot()`。
最后,使用 `ax.set_title()` 设置了每个子图的标题。
最后一行的 `plt.show()` 用于显示图表。
matplotlib.rcParams['font.family']='SimHei' plt.figure(figsize=(20,15)) ax1=plt.subplot(211) Platform = data.groupby(by='Platform').sum() Platform =Platform.iloc[::,-1:].sort_values(by='Global_Sales',ascending=False) sns.barplot(x=Platform.index,y=Platform.Global_Sales,ax=ax1) plt.title("游戏平台累计发行量",size = 14) ax2=plt.subplot(212) Platform_near5 = data[data.Year>=2011].groupby(by='Platform').sum() Platform_near5 =Platform_near5.iloc[::,-1:].sort_values(by='Global_Sales',ascending=False) sns.barplot(x=Platform_near5.index,y=Platform_near5.Global_Sales,ax=ax2) plt.title("近五年游戏平台累计发行量",size = 14) plt.show()
这段代码使用了 `matplotlib` 和 `seaborn` 库来创建一个包含两个子图的图表,用于可视化游戏平台的累计发行量。
首先,通过 `matplotlib.rcParams['font.family']='SimHei'` 设置了字体为中文。
然后,使用 `plt.figure(figsize=(20,15))` 创建一个大小为 20x15 的图表。
接下来,使用 `plt.subplot(211)` 创建第一个子图,并将其赋值给变量 `ax1`。
通过 `data.groupby(by='Platform').sum()` 对数据集按照平台进行分组,并计算每个平台的累计发行量。然后使用 `.iloc[::,-1:]` 取出最后一列(即全球销售额),再按照全球销售额降序排序。结果存储在变量 `Platform` 中。
然后,使用 `sns.barplot()` 绘制条形图。通过 `x=Platform.index` 和 `y=Platform.Global_Sales` 将平台作为 x 轴的标签,全球销售额作为 y 轴的值。
使用 `plt.title()` 设置第一个子图的标题为 "游戏平台累计发行量",设置字体大小为 14。
接下来,使用 `plt.subplot(212)` 创建第二个子图,并将其赋值给变量 `ax2`。
通过 `data[data.Year>=2011].groupby(by='Platform').sum()` 筛选出近五年(2011 年及以后)的数据,并按照平台进行分组,并计算每个平台的累计发行量。然后使用 `.iloc[::,-1:]` 取出最后一列(即全球销售额),再按照全球销售额降序排序。结果存储在变量 `Platform_near5` 中。
然后,使用 `sns.barplot()` 绘制条形图。通过 `x=Platform_near5.index` 和 `y=Platform_near5.Global_Sales` 将平台作为 x 轴的标签,全球销售额作为 y 轴的值。
使用 `plt.title()` 设置第二个子图的标题为 "近五年游戏平台累计发行量",设置字体大小为 14。
最后一行的 `plt.show()` 用于显示图表。
阅读全文