使用Python动态放大以查看日期的特定时间

问题描述 投票:0回答:1

我正在绘制与日期相对应的运行时间图。我有一个庞大的数据,其中包含运行时间和日期作为列。

我正在尝试更改代码,以便可以动态放大以查看一天中的小时数,而不是一次在x轴上显示多个刻度。我有以下工作代码,这些代码绘制了以下图片。第一张图片是我在Linux环境上运行该程序后得到的图。第二个是当我放大时。

我想知道如何更改代码,因此我起初只能看到几个月,然后放大才能看到更具体的小时,然后是几分钟和几秒钟。我的图是条形图,但最好将它们作为线条。如果我能获得关于如何将悬停作为in this link添加到图形以及不使用Bokeh的缩放选项的提示,那可能会很棒。

我四处搜索,发现我也可以使用Bokeh进行缩放,但是由于我的环境,我无法使用该库。

我的代码
def file_processing (file_name):

    data_file = pandas.read_csv(file_name, delim_whitespace=True, header=None)
    data_file.rename(columns={0: 'date', 9:'run_time'}, inplace=True)
    data_file.sort_values(by='date',inplace=True)

    data_file['run_date'] = pandas.to_datetime(data_file.date, format='%Y%m%dT%H%M%S').dt.strftime("%Y-%m-%d %H:%M:%S")
    plt.close()
    data_file.plot('run_date', 'run_time',kind='bar')
    plt.margins(0.2)

我的数据(制表符分隔的.csv文件)
20190601T034207 NAME    cc130.aa.bb NAME-7600816.2005   1   1   NAME-37x161 37x161  d39c13  2821    0   0ce000  1283 JOBS/NAME-7600816.2005/blast-37-161.txt
20190601T034214 NAME    cc128.aa.bb NAME-7600816.2004   1   1   NAME-37x161 37x161  d39c13  2815    0   0ce000  1283 JOBS/NAME-7600816.2004/blast-37-161.txt
20190601T034208 NAME    nn019.aa.bb NAME-7600816.2008   1   1   NAME-37x161 37x161  d39c13  3465    0   0ce000  1283 JOBS/NAME-7600816.2008/blast-37-161.txt
20190601T034220 NAME    nn058.aa.bb NAME-7600816.2010   1   1   NAME-37x161 37x161  d39c13  3462    0   0ce000  1283 JOBS/NAME-7600816.2010/blast-37-161.txt
20190601T034217 NAME    nn011.aa.bb NAME-7600816.2014   1   1   NAME-37x161 37x161  d39c13  3469    0   0ce000  1283 JOBS/NAME-7600816.2014/blast-37-161.txt
20190601T034219 NAME    nn224.aa.bb NAME-7600816.2015   1   1   NAME-37x161 37x161  d39c13  3468    0   0ce000  1283 JOBS/NAME-7600816.2015/blast-37-161.txt

截至目前的结果

Right After Running The Program

After Zooming In

[请让我知道是否需要更新我的问题的任何部分而不降级。我真的很感激。我愿意接受任何建议。非常感谢!

我正在绘制与日期相对应的运行时间图。我有一个庞大的数据,其中包含运行时间和日期作为列。我正在尝试更改代码,以便可以动态放大以查看...

python date graph zoom bokeh
1个回答
0
投票

我在此link中发布了包含该问题的部分答案的答案

© www.soinside.com 2019 - 2024. All rights reserved.