@ Шелдор считает, что в вашем примере недостаточно кода для работы, поэтому приведенное ниже может быть не совсем тем, что вы ищете.
Я преобразовал названия сезонов и времени в целые числапоскольку точечная диаграмма не может отображать строки для оси x / y.
import pandas as pd
df = pd.DataFrame(data={
'x': ['Winter','Spring','Summer','Autumn'],
'y': ['Night','Morning','Day','Evening'],
'z': [2222,3888,1111,2999],
})
# convert 'x' and 'y' strings to int to enable scatter plot
season_map = {
'Winter': 0,
'Spring': 1,
'Summer': 2,
'Autumn': 3,
}
time_map = {
'Night': 0,
'Morning': 1,
'Day': 2,
'Evening': 3,
}
df.loc[:,'x_int'] = df.x.map(season_map)
df.loc[:,'y_int'] = df.y.map(time_map)
ax = df.groupby(['x_int','y_int']).z.sum().reset_index()\
.plot.scatter(x='x_int', y='y_int', s=df['z'])
ax.set_xlabel('X')
ax.set_ylabel('Y')