【发布时间】:2017-11-13 12:29:44
【问题描述】:
我有一个基于 SQL 中月份名称的表。用 monthnumbers int 排序。我想用 matplotlib 在 Python Jupyter Notebook 中制作折线图。但是折线图给了我一个字母顺序(a、b、c 等...)
这是不正确的。我需要月份数字的订单。
我该怎么做? 我的选择语句中同时包含月份编号和月份名称:
cursor = conx.cursor()
cursor.execute(sql)
Revenue = []
Monthnumber = []
Month = []
Maandnummer = []
for row in cursor:
regio.append(str(row.Mond))
Revenue.append(int(row.Revenue))
Month.append(int(row.Month))
Maandnummer.append(int(row.Monthnumber))
df = pd.read_sql(sql, conx)
Months = ['januari','februari','maart','april', 'mei', 'juni', 'juli', 'augustus','september', 'oktober', 'november', 'december']
mapping = {Maandnummer: i for i, maandnummer in enumerate(Months)}
key = df['maandnummer'].map(mapping)
# Plot de inhoud van het dataframe (tabel als resultaat van query)
plt.figure(figsize=(20,10))
aantal.sort()
plt.plot(key, omzet, 'ro')
plt.ylabel('Omzet')
plt.xlabel('Regio')
plt.show()
【问题讨论】:
-
如果你不分享,很难帮助你理解你在谷歌搜索时找到的解决方案。
-
月 = ['januari','februari','maart','april', 'mei', 'juni', 'juli', 'augustus','september', 'oktober' , 'november', 'december'] mapping = {maandnum: i for i, maandnum in enumerate(Months)} key = df['maandnum'].map(mapping)
标签: python sql matplotlib