Визуализации в виде подзаголовков из цикла for - PullRequest
0 голосов
/ 04 августа 2020

Совершенно новый для Python!

У меня есть фрейм данных pandas с 10 столбцами. Я создал график плотности для каждого столбца в для l oop со следующим кодом:

for column in df.columns:
    df[column].plot(kind='density')
    plt.title(f'{ttl_key.get(column)} Density Plot', fontsize=14)
    plt.xticks(size=11)
    plt.yticks(size=11)
    plt.xlabel(key.get(column), fontsize=12)
    plt.ylabel('Density (%)', fontsize=12)
    axes.Axes.set_xlim(name, xmin=0, xmax=indi_axis.get(column))
    plt.show()

Это обеспечивает визуализации, которые мне нужны, но мне нужно построить их все вместе на подзаголовке 2x5 grid.

Есть простой способ сделать это или его нельзя сделать с помощью for l oop, созданного мной?

Обновлено

for i in range(0, 10)
    gs = gridspec.GridSpec(nrows=5, ncols=2)  
    ax = plt.subplot(gs[i])  
    plot = nba_density[key_index.get(i)].plot(kind='density')  
    plt.title(f'{ttl_key.get(i)} Density Plot', fontsize=14)  
    plt.xticks(size=11)  
    plt.yticks(size=11)  
    plt.xlabel(key.get(i), fontsize=12)  
    plt.ylabel('Density (%)', fontsize=12)  
    axes.Axes.set_xlim(plot, xmin=0, xmax=indi_axis.get(i))  
    plt.figure(figsize=(18,18))  
    ax.plot()

1 Ответ

0 голосов
/ 04 августа 2020

вы можете попробовать GridSpe c

gs = gridspec.GridSpec(2, 1, width_ratios=[2, 6]) 
ax = plt.subplot(gs[0])
df[column].plot(kind='density')
plt.title(f'{ttl_key.get(column)} Density Plot', fontsize=14)
plt.xticks(size=11)
plt.yticks(size=11)
plt.xlabel(key.get(column), fontsize=12)
plt.ylabel('Density (%)', fontsize=12)
axes.Axes.set_xlim(name, xmin=0, xmax=indi_axis.get(column))
ax.plot()

ax = plt.subplot(gs[1])
df[column].plot(kind='density')
plt.title(f'{ttl_key.get(column)} Density Plot', fontsize=14)
plt.xticks(size=11)
plt.yticks(size=11)
plt.xlabel(key.get(column), fontsize=12)
plt.ylabel('Density (%)', fontsize=12)
axes.Axes.set_xlim(name, xmin=0, xmax=indi_axis.get(column))
ax.plot()

вы можете выполнять итерацию, используя количество столбцов (i) в ax = plt.subplot(gs[i]) приведенный выше код - это просто пример для GridSpec

...