如何标准化数据并创建堆积条形图?

玉子

我有一个数据框,其中包含 3 个地区每种游戏类型的总销售额。我想创建一个堆积条形图,以便我可以比较每个地区每种类型的销售情况。

我知道我应该先规范化数据,但不知道如何做。

我对编程很陌生,所以如果有人能提供一个关于我如何去做的简单解释,我将不胜感激!!

这是我的数据框

regional_genre = video_sales_df.groupby(['Genre'],as_index=False)["NA_Sales","EU_Sales","JP_Sales"].sum()[:5]

数据框:

Genre       NA_Sales   EU_Sales   JP_Sales
Action      877,83     525        159,95
Adventure   105,8      64,13      52,07
Fighting    223,59     101,32     87,35
Misc        410,24     215,98     107,76
Platform    447,05     201,63     130,77

我使用 [:5] 是因为我只想绘制每个地区的前 5 种类型。

阿图瓦斯

这可能是您正在努力实现的目标。您可以使用 sklearn 进行标准化,并在下面查看如何创建堆积条形图。使用您想要的标准化比例。

import pandas as pd
from sklearn import preprocessing
import matplotlib.pyplot as plt


# Read data
video_sales_df = pd.read_excel("data.xlsx")

regional_genre = video_sales_df.groupby(['Genre'],as_index=False)["NA_Sales","EU_Sales","JP_Sales"].sum()[:5]
columns = ["NA_Sales","EU_Sales","JP_Sales"]

# Normalization parameters
normalize_min = 0.1
normalize_max = 1

# Normalize
regional_genre[columns]= preprocessing.minmax_scale(regional_genre[columns], feature_range=(normalize_min, normalize_max))

# Plot stacked bars
plt.bar(regional_genre["Genre"], regional_genre["NA_Sales"], label="NA_Sales")
plt.bar(regional_genre["Genre"], regional_genre["EU_Sales"], bottom=regional_genre["NA_Sales"], label="EU_Sales")
plt.bar(regional_genre["Genre"], regional_genre["JP_Sales"], bottom=regional_genre["EU_Sales"]+regional_genre["NA_Sales"], label="JP_Sales")
plt.legend()
plt.ylabel("Normalized sales")
plt.show()

# Another solution for plot:

plt.bar(columns, regional_genre.ix[0,1:], label="Action")
bot = regional_genre.ix[0,1:]
plt.bar(columns, regional_genre.ix[1,1:], bottom=bot, label="Adventure")
bot += regional_genre.ix[1,1:]
plt.bar(columns, regional_genre.ix[2,1:], bottom=bot, label="Fighting")
bot += regional_genre.ix[2,1:]
plt.bar(columns, regional_genre.ix[3,1:], bottom=bot, label="Misc")
bot += regional_genre.ix[3,1:]
plt.bar(columns, regional_genre.ix[4,1:], bottom=bot, label="Platform")



结果2 另一种解决方案: 结果2

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

堆积条形图

来自分类Dev

使用D3.js layout.stack()制作标准化的堆叠条形图

来自分类Dev

Matplotlib:堆积的条形图

来自分类Dev

如何在R中以水平堆积条形图的样式创建时间序列图

来自分类Dev

从R中的两个数据框创建聚簇堆积的条形图

来自分类Dev

如何从数据框创建条形图

来自分类Dev

使用Highcharter创建负堆积条形图(Likert图)

来自分类Dev

排序堆积的条形图

来自分类Dev

如何标准化堆叠条形图中的条形颜色?

来自分类Dev

如何缩放ggplot堆积的条形图

来自分类Dev

ChartJs堆积条形图

来自分类Dev

数据框水平堆积条形图

来自分类Dev

无法创建堆积的条形图?

来自分类Dev

如何水平显示堆积的条形图?

来自分类Dev

堆积条形图

来自分类Dev

创建堆积的条形图,以每月间隔显示数据吗?

来自分类Dev

如何正确格式化堆积的条形图

来自分类Dev

如何使用C3创建字符串数据的堆积条形图?

来自分类Dev

在SSRS中创建堆积的条形图

来自分类Dev

如何将堆积的条形图作为对堆积的条形图的细化?

来自分类Dev

堆积条形图

来自分类Dev

使用相同的数据集创建Plottable.js堆积的条形图

来自分类Dev

归一化堆积条形图绘图问题。所有rect均分,与数据无关

来自分类Dev

标准化条形图

来自分类Dev

在 r 中创建堆积条形图

来自分类Dev

R 使用 ggplot2 从非数值数据创建堆积条形图

来自分类Dev

Matplotlib - 创建堆积条形图

来自分类Dev

如何为堆积条形图创建查询

来自分类Dev

如何创建多色 NativeScript BarSeries 堆积条形图