Я хочу создать подзаголовки разброса, но мне нужно дифференцировать каждый маркер в соответствии с столбцом «Wall_construction». Мои данные включают: содержимое данных
Вот что у меня есть на данный момент:
import matplotlib.pyplot as plt
import numpy as np
import pandas as pd
df = pd.read_csv("forpythonultimo.csv")
grouped = df.groupby(["panel_coverage", "wwr"])
ncols= 5
nrows = int(np.ceil(grouped.ngroups/ncols))
cols = ['WWR {}'.format(col) for col in ['10%', '20%', '30%', '40%', '50%']]
rows = ['Panel {}'.format(row) for row in ['42%', '47%', '52%', '57%', '63%', '68%', '75%', '78%']]
fig, axes = plt.subplots(nrows=nrows, ncols=ncols, figsize=(12, 4), sharex=True, sharey=True)
pad = 5
for (key, ax) in zip(grouped.groups.keys(), axes.flatten()):
grouped.get_group(key).plot(x='disc_hours', y='Total_heat_gain', kind='scatter', subplots=True, ax=ax)
ax.set_xlabel('')
ax.set_ylabel('')
ax.set_title('')
for ax, col in zip(axes[0], cols):
ax.annotate(col, xy=(0.5, 1), xytext=(0, pad),
xycoords='axes fraction', textcoords='offset points',
size='large', ha='center', va='baseline')
for ax, row in zip(axes[:,0], rows):
ax.annotate(row, xy=(0, 0.5), xytext=(-ax.yaxis.labelpad - pad, 0),
xycoords=ax.yaxis.label, textcoords='offset points',
size='large', ha='right', va='center')
plt.show()
Подзаголовки
Спасибо заранее за вашу помощь.