Pandas绘制带误差条图:样式不应用
我有一个Pandas(版本0.14.1)的DataFrame
对象,长得像这样:
import pandas as pd
df = pd.DataFrame(zip([1, 2, 3, 4, 5],
[0.1, 0.3, 0.1, 0.2, 0.4]),
columns=['y', 'dy'])
它返回的是:
y dy
0 1 0.1
1 2 0.3
2 3 0.1
3 4 0.2
4 5 0.4
第一列是值,第二列是误差。
第一种情况:我想为y
值画个图。
df['y'].plot(style="ro-")
第二种情况:我想为y
值添加一个垂直的误差条dy
。
df['y'].plot(style="ro-", yerr=df['dy'])
所以,如果我在plot
方法中添加yerr
或xerr
参数,它就会忽略style
。
这是Pandas的一个特性还是bug呢?
1 个回答
2
正如TomAugspurger所提到的,这个问题是一个已知问题。不过在大多数情况下,有一个简单的解决办法:用fmt
这个关键词来代替style
关键词,这样可以指定快捷样式选项。
import pandas as pd
df = pd.DataFrame(zip([1, 2, 3, 4, 5],
[0.1, 0.3, 0.1, 0.2, 0.4]),
columns=['y', 'dy'])
df['y'].plot(fmt='ro-', yerr=df['dy'], grid='on')