Python 如何创建不同点大小的图形?

Python 如何创建不同点大小的图形?,python,matplotlib,Python,Matplotlib,我有以下数据帧: Madrugada Mañana Tarde Noche Lunes 1 2 3 4 Martes 5 6 7 8 Miércoles 9 10 11 12 Jueves 13 14 15 16 Viernes 17

我有以下数据帧:

               Madrugada  Mañana  Tarde  Noche
Lunes              1       2      3      4
Martes             5       6      7      8
Miércoles          9      10     11     12
Jueves            13      14     15     16
Viernes           17      18     19     20
Sábado            21      22     23     24
Domingo           25      26     27     28
创建时使用:

 import pandas as pd
index = ['Lunes', 'Martes', 'Miércoles', 'Jueves', 'Viernes', 'Sábado', 'Domingo']
columns = ['Madrugada','Mañana', 'Tarde', 'Noche']
Cuadro = pd.DataFrame(index=index, columns=columns)

Cuadro.loc['Lunes'] = pd.Series({'Madrugada':1, 'Mañana':2, 'Tarde':3,
          'Noche':4})
Cuadro.loc['Martes'] = pd.Series({'Madrugada':5, 'Mañana':6, 'Tarde':7,
          'Noche':8})
Cuadro.loc['Miércoles'] = pd.Series({'Madrugada':9, 'Mañana':10, 'Tarde':11,
          'Noche':12})
Cuadro.loc['Jueves'] = pd.Series({'Madrugada':13, 'Mañana':14, 'Tarde':15,
          'Noche':16})
Cuadro.loc['Viernes'] = pd.Series({'Madrugada':17, 'Mañana':18, 'Tarde':19,
          'Noche':20})
Cuadro.loc['Sábado'] = pd.Series({'Madrugada':21, 'Mañana':22, 'Tarde':23,
          'Noche':24})
Cuadro.loc['Domingo'] = pd.Series({'Madrugada':25, 'Mañana':26, 'Tarde':27,
          'Noche':28})
print(Cuadro)
如何创建类似以下图形:

                      Data Usage:

|Midnight          o
|
|Night                                                             OOO
|                                                                      OOO
|Afternoon
|
|            o          O     O          (   )      
|Morning__________________________________________________________________

              M      T       W           Th         F          Sat          Sun
点的大小取决于单元格的值? 提前感谢您的帮助或推荐。。。 何塞

data.csv

代码.py

结果图


您可以向matplotlib的
散点添加大小列表:感谢您的建议,如何实现该建议以创建具有不同点大小的图形(取决于单元格的值)如上所述?这正是我完成我的项目所需要的,如果它能帮助你指定一个在我答案左边打勾的可接受答案的话。干杯:)你是怎么学会那样画的?请您给我一些关于Matplotlib绘图技巧的建议好吗?提前感谢您…Joseprace和阅读文档;老实说,我还没有找到任何好的资源,但也许我应该创建一个。期待着在出版时阅读它,请让我们知道能够更好地利用Matplolib进行绘图…谢谢!
Day,Midnight,Morning,Afternoon,Night
Monday,4.002900,30.905096,25.193066,23.704473
Tuesday,22.074967,16.407200,50.409445,27.396373
Wednesday,18.875000,28.415111,22.205521,25.744592
Thursday,12.470333,16.265086,15.390797,81.988800
Friday,NaN,33.658050,23.814764,20.096790
Saturday,12.647037,16.545295,25.620673,14.903473
Sunday,4.975500,19.023320,21.215298,45.440120
import pandas as pd
import matplotlib.pyplot as plt

df = pd.read_csv("data.csv")
fig, ax = plt.subplots()
ax.scatter(df['Day'], ['Midnight']*7, s=20*df['Midnight'])
ax.scatter(df['Day'], ['Morning']*7, s=20*df['Morning'])
ax.scatter(df['Day'], ['Afternoon']*7, s=20*df['Afternoon'])
ax.scatter(df['Day'], ['Night']*7, s=20*df['Night'])
plt.ylabel('Time of Day')
plt.xlabel('Day of the Week')
plt.show()