相关疑难解决方法(0)

尽管付出了最大的努力,Matplotlib显示x-tick标签重叠

看看下面的图表: 在此输入图像描述

这是这个更大的数字的子情节: 在此输入图像描述

我看到它有两个问题.首先,x轴标签相互重叠(这是我的主要问题).第二.x轴次网格线的位置似乎有点不稳定.在图表的左侧,它们看起来间隔适当.但在右边,它们似乎挤满了主要的网格线......好像主要的网格线位置不是小刻度线位置的正确倍数.

我的设置是我有一个DataFrame df,它有一个DatetimeIndex行和一个value包含浮点数的列.df如有必要,我可以在要点中提供内容的示例.df这篇文章的底部有十几行作为参考.

这是生成图形的代码:

now = dt.datetime.now()

fig, axes = plt.subplots(2, 2, figsize=(15, 8), dpi=200)
for i, d in enumerate([360, 30, 7, 1]):
    ax = axes.flatten()[i]
    earlycut = now - relativedelta(days=d)
    data = df.loc[df.index>=earlycut, :]
    ax.plot(data.index, data['value'])
    ax.xaxis_date()

    ax.get_xaxis().set_minor_locator(mpl.ticker.AutoMinorLocator())
    ax.get_yaxis().set_minor_locator(mpl.ticker.AutoMinorLocator())

    ax.grid(b=True, which='major', color='w', linewidth=1.5)
    ax.grid(b=True, which='minor', color='w', linewidth=0.75)
Run Code Online (Sandbox Code Playgroud)

这里我最好的选择是让x轴标签相互重叠(在四个子图中的每一个中)?另外,单独(但不太紧急),左上方子图中的次要刻度问题是什么?

我在Pandas 0.13.1,numpy 1.8.0和matplotlib 1.4.x.

这里有一小段df供参考:

                                    id scale  tempseries_id    value
timestamp                                                           
2014-11-02 14:45:10.302204+00:00  7564     F              1  68.0000
2014-11-02 14:25:13.532391+00:00 …
Run Code Online (Sandbox Code Playgroud)

python matplotlib pandas

34
推荐指数
2
解决办法
4万
查看次数

matplotlib 条形图中的“缺失”条

在制作熊猫数据框的条形图时,我一直在调试显示问题

今天遇到一个奇怪的问题:

index: <class 'pandas.tseries.index.DatetimeIndex'>
count   83.000
mean     0.000
std      0.879
min     -2.159
25%     -0.605
50%      0.001
75%      0.658
max      2.254
Name: error, dtype: float64
Run Code Online (Sandbox Code Playgroud)

当我将数据绘制为时间序列时,它看起来不错:

plt.plot(errors.index, errors.values)

在此处输入图片说明

但是,如果我将其打印为条形图,则大多数条形图都不会出现:

plt.bar(errors.index, errors.values)
plt.gcf().autofmt_xdate()
Run Code Online (Sandbox Code Playgroud)

在此处输入图片说明

我认为条形图的数据条太多,无法很好地显示,但如果我直接从数据框中绘制条,则情况并非如此:

errors.plot(kind="bar")

但是,dataframe.plot 不能很好地处理这么多带有轴标签的条形……但它告诉我 plt.bar应该能够显示它。

在此处输入图片说明

matplotlib pandas

3
推荐指数
1
解决办法
5446
查看次数

标签 统计

matplotlib ×2

pandas ×2

python ×1