我正在尝试使用pandas版本0.18.1绘制时间戳降水数据的条形图和时间戳流量数据的线图 . 我正在使用最新发布的Anaconda,python 3.5 .

如果我将它们绘制为线图,则一切都显示为正常 . 但是,当我将降水数据绘制为条形图时,我会在绘图区域外的绘图显示中绘制出非常奇怪的黑线 .

这是我的代码,用于在两个子图上绘制它们,共享x轴:

import matplotlib.pyplot as plt
import pandas as pd

plt.style.use('ggplot')

pdf = pd.read_csv('precip.csv', delimiter=',', header=None, index_col=0)
pdf.columns = ['p']

qdf = pd.read_csv('manhole_B.csv', delimiter=',', header=None, index_col=0)
qdf.columns = ['q']

f, ax = plt.subplots(2, sharex=True)
pdf.plot.bar(ax=ax[0])
qdf.plot(ax=ax[1])

plt.show()

这是我得到的输出,在情节周围出现奇怪的黑线:

Strange plot output

当在同一子图上绘制时,我会得到一个类似的问题,具有次y轴 . 但是,将两个数据框绘制为线图,一切都正确显示 .

谁能帮我这个?我找不到有人发生类似问题的帖子 .

编辑:这是数据的样子 . 它的范围超过两个月,每小时采样降水数据,每15分钟采样一次流量数据,因此,如果这些数据全部显示为刻度线或标签,那么就是线路的来源 . 在搜索刻度线问题后,我发现了相似的显示图,所以我正在研究如何限制刻度线和轴标签的数量 .

6/1/2016 0:00  56.8
6/1/2016 0:15  52.1
6/1/2016 0:30  44.0
6/1/2016 0:45  43.6
6/1/2016 1:00  34.3

编辑:我已经让标签显示正确,通过添加到我的代码,以设置刻度标签每周显示一次每小时数据 .

n = 24*7
ticks = ax.xaxis.get_ticklocs()
ticklabels = [l.get_text() for l in ax.xaxis.get_ticklabels()]
ax.xaxis.set_ticks(ticks[::n])
ax.xaxis.set_ticklabels(ticklabels[::n])