python - 在标准化图中可视化值
问题描述
我有一些我想绘制的数据,在标准化图表中可视化。数据集:
Gini
var1 0.000223
var2 0.000047
var3 0.000933
var4 0.000081
var5 0.000014
df.sort_values(by='Gini', ascending=False).plot(kind='bar')
我试过了,plt.yticks(np.arange(0, 1))
但这只是改变了规模。
解决方案
如果您只有一列并且仅绘制该"Gini"
列,则可以选择该列并在绘制之前对其进行规范化,如下所示:
((df['Gini']-df['Gini'].min())/(df['Gini'].max()-df['Gini'].min())).sort_values().plot(kind='bar')
一般来说,您可以标准化整个数据框并绘制它:
df_normalized = (df-df.min())/(df.max()-df.min())
df_normalized.sort_values(by='Gini', ascending=False).plot(kind='bar')
推荐阅读
- c# - 如何让 Newtonsoft 按原样反序列化日期并将其称为 utc?
- c# - 使用 dotnetzip 库获取没有完整目录路径的 zip 文件
- python - 当我使用具有动态 fn 名称的 Ctypes 时,为什么我会得到负 ptr?
- r - 错误:无法提取不存在的列。使用 tidyr 包中的单独功能时
- bash - 我将自己的路径设置为 $PATH 变量,以便全局访问我的一些脚本,但我无法在任何目录中访问它们
- kubernetes - Kubernetes - 从文件更新现有配置映射
- c# - EF Core 中多对多关系的级联引用完整性约束
- php - 如何通过发送 PHP 邮件在电子邮件的收件箱列表中显示附件
- heroku - Heroku 上 Dash 应用程序超时的解决方案
- sql-server - 如何在 SQL Server 中获取两个日期时间之间的时间段作为时间跨度?