Python - 如何在没有属性细节的图表上绘制计算出的数字

时间:2014-11-03 15:57:58

标签: python matplotlib plot

我正在绘制一个简单的图表,并通过plot.text()添加从DataFrame中获取的数字。该数字按预期绘制,但也显示其属性的详细信息。我想抑制属性的显示并仅绘制数字。

以下代码重现了该问题。

import numpy as np
import pandas as pd
from pandas import *
import matplotlib.pyplot as plot
%matplotlib inline

rand = np.random.RandomState(1)
index = np.arange(8)

df = DataFrame(rand.randn(8, 1), index=index, columns=list('A'))

df['date'] = date_range('1/1/2014', periods=8)

print df

   A       date
0  1.624345 2014-01-01
1 -0.611756 2014-01-02
2 -0.528172 2014-01-03
3 -1.072969 2014-01-04
4  0.865408 2014-01-05
5 -2.301539 2014-01-06
6  1.744812 2014-01-07
7 -0.761207 2014-01-08


df2 = pd.DataFrame(index = ['1'], columns=['example'])
df2['example'] = 1.436792
print df2

example
1  1.436792

fig, ax = plot.subplots(figsize=(15,10))
df.plot(x='date', y='A')

plot.text(0.05, 0.95, df2['example'],
     horizontalalignment='left',
     verticalalignment='center',
     transform = ax.transAxes)

该图显示索引,名称和dtype数据以及示例编号。任何人都可以展示如何压制这个细节并只绘制数字?任何帮助非常感谢。

1 个答案:

答案 0 :(得分:0)

只需使用DataFrame值进行绘图:

plot.text(0.05, 0.95, df2['example'].values,
     horizontalalignment='left',
     verticalalignment='center',
     transform = ax.transAxes)

或者只需设置visible=True即可隐藏所有内容:

plot.text(0.05, 0.95, df2['example'],
     horizontalalignment='left',
     verticalalignment='center',
     transform = ax.transAxes, visible=False)