gpt4 book ai didi

python - 如何为 Pandas 数据框中的每一列制作一个seaborn distplot?

转载 作者:行者123 更新时间:2023-12-03 14:00:30 24 4
gpt4 key购买 nike

我正在使用 Seaborn在 Jupyter notebook 中绘制如下直方图:

import numpy as np
import pandas as pd
from pandas import DataFrame
import matplotlib.pyplot as plt
import seaborn as sns

%matplotlib inline

df = pd.read_csv('CTG.csv', sep=',')

sns.distplot(df['LBE'])

我有一个列数组,其中包含要为其绘制直方图的值,我尝试为每个列绘制直方图:
continous = ['b', 'e', 'LBE', 'LB', 'AC']

for column in continous:
sns.distplot(df[column])

我得到了这个结果 - 只有一个带有(大概)所有直方图的图:

enter image description here

我想要的结果是多个直方图,看起来像这样(每个变量一个):

enter image description here

我怎样才能做到这一点?

最佳答案

插入 plt.figure()在每次调用 sns.distplot() 之前.

这是一个例子 plt.figure() :

enter image description here

这是一个例子 没有 plt.figure() :

enter image description here

完整代码:

# imports
import numpy as np
import pandas as pd
import seaborn as sns
import matplotlib.pyplot as plt
plt.rcParams['figure.figsize'] = [6, 2]

%matplotlib inline

# sample time series data
np.random.seed(123)
df = pd.DataFrame(np.random.randint(-10,12,size=(300, 4)), columns=list('ABCD'))
datelist = pd.date_range(pd.datetime(2014, 7, 1).strftime('%Y-%m-%d'), periods=300).tolist()
df['dates'] = datelist
df = df.set_index(['dates'])
df.index = pd.to_datetime(df.index)
df.iloc[0]=0
df=df.cumsum()

# create distplots
for column in df.columns:
plt.figure() # <==================== here!
sns.distplot(df[column])

关于python - 如何为 Pandas 数据框中的每一列制作一个seaborn distplot?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60046243/

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