【问题标题】:What's the problem with my code , that returns empty plot? [duplicate]我的代码有什么问题,返回空图? [复制]
【发布时间】:2019-10-28 05:52:26
【问题描述】:

我是 Python 新手,我知道这是一个基本问题,但花了我一段时间。

我有四列的表格date, time, flow, dayType,显示两天内特定时间有多少汽车通过某个区域(2018-10-05,2018-10-12)。

现在我想根据时间在同一个图(轴)上绘制每天的相应流量以比较这些天,但我得到的唯一东西是一个没有显示任何图表的空图!

import matplotlib
import numpy as np
import matplotlib.pyplot as plt
import pandas as pd
import seaborn as sns
from numpy import split
%matplotlib inline
sns.set()
data = pd.read_excel('friday_frame.xlsx', names=['date', 'time', 'flow', 'dayType'])
fig, ax = plt.subplots(figsize=(12, 4))
dataPivot = pd.pivot_table(data, values='flow', index='time', columns='date').plot()
plt.ylabel('flows');

【问题讨论】:

    标签: python python-3.x pandas matplotlib


    【解决方案1】:

    我用这段代码制作了一个虚拟数据帧,类似于你正在做的:

    data = pd.DataFrame(data={"date": ["01/01/2019", "01/01/2019", "01/02/2019", "01/02/2019"],
                              "time": [pd.Timestamp(year=2019, month=1, day=1, hour=9),
                                      pd.Timestamp(year=2019, month=1, day=1, hour=13),
                                      pd.Timestamp(year=2019, month=1, day=2, hour=9),
                                      pd.Timestamp(year=2019, month=1, day=2, hour=13)],
                              "flow": [1,2,3,4], "dayType": ["morning", "morning", "afternoon", "afternoon"]})
    dataPivot = pd.pivot_table(data, values='flow', index='time', columns='date'); display(dataPivot) #Pivot Table Values
    dataPivot.plot(kind="bar") #The Graph
    

    它输出这个:

    这里和你正在做的有什么不同?

    一些事情,但没什么大不了的。

    首先,plot() 需要一些 kind 的图形来绘制,在这种情况下,我选择了 bar (kind="bar")。当然,你可以选择适合你的。

    其次,我选择不将参数链接在一起,这样我就可以看到我的表格和情节。由于我在 Jupyter 中运行此程序,因此我需要使用 display 在单元格中显示多个内容。

    希望这会有所帮助!

    【讨论】:

    • 非常感谢您的关注,但我仍然有一些问题,现在我认为是因为有时缺少流量,我的意思是例如我有 2019-05-01 的流量,如 4340 但是这次2019-12-01我什么都没有
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-08-01
    • 1970-01-01
    • 2021-09-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多