gpt4 book ai didi

python - 分别绘制所有 Pandas 数据框列

转载 作者:行者123 更新时间:2023-12-03 19:07:03 26 4
gpt4 key购买 nike

我有一个只有数字列的 Pandas 数据框,我正在尝试为所有特征创建一个单独的直方图

ind group people value value_50
1 1 5 100 1
1 2 2 90 1
2 1 10 80 1
2 2 20 40 0
3 1 7 10 0
3 2 23 30 0

但在我的现实生活数据中有 50 多列,我如何为所有这些列创建一个单独的图

我试过了
df.plot.hist( subplots = True, grid = True)

它给了我一个重叠的不清楚的情节。

我如何使用 pandas subplots = True 安排它们。下面的示例可以帮助我在 (2,2) 网格中获取四列的图形。但对于所有 50 列来说,这是一个很长的方法
fig, [(ax1,ax2),(ax3,ax4)]  = plt.subplots(2,2, figsize = (20,10))

最佳答案

Pandas subplots=True将在单个列中排列轴。

import numpy as np
import matplotlib.pyplot as plt
import pandas as pd

df = pd.DataFrame(np.random.rand(7,20))

df.plot(subplots=True)

plt.tight_layout()
plt.show()

enter image description here

在这里, tight_layout未应用,因为图太小而无法很好地排列轴。不过,可以使用更大的数字( figsize=(...) )。

为了将轴放在网格上,可以使用 layout参数,例如
df.plot(subplots=True, layout=(4,5))

enter image description here

如果通过 plt.subplots() 创建轴,也可以实现相同的效果。
fig, axes = plt.subplots(nrows=4, ncols=5)
df.plot(subplots=True, ax=axes)

关于python - 分别绘制所有 Pandas 数据框列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55567706/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com