首页 > 解决方案 > Python:绘制不连续的数据-breakaxis 包是否也适用于 pandas 日期时间?

问题描述

我试图用 ben.ditcher 的包 brokenaxis 绘制一个不连续的时间序列。但是,我找不到使情节与 pandas 日期时间时间序列一起工作的方法。我得到的错误信息是:

TypeError: 不支持的操作数类型 -: 'str' 和 'str'

由于我对 python 还比较陌生,所以我不确定是不是我做错了什么,或者只是这个包与 pd.datetime 不兼容。如果有人可以在这里帮助我,我会很高兴。

这是我尝试的一个最小示例:

# import packages    
import matplotlib.pyplot as plt
from brokenaxes import brokenaxes
import pandas as pd
import numpy as np
import random

# generate dataframe with datetime column
dti = pd.date_range('2019-01-01', periods=365, freq='D') # create list with daily datetime objects for the year 2019
random_numbers = random.sample(range(1, 500), 356) # generate 365 random numbers within range 1 to 500
data_tuples = list(zip(dti,random_numbers)) # put lists together
df = pd.DataFrame(data_tuples, columns=['Date','Value']) # create dataframe from lists

# use brokenaxes
fig = plt.figure(figsize=(5,2))
bax = brokenaxes(xlims=(('2019-01-01','2019-02-01'), ('2019-05-01','2019-09-01')),hspace=0.05)

bax.plot(df.Date, df.Value)

标签: pythonpandasdatetimeplot

解决方案


推荐阅读