在绘制pandas数据时如何禁用标签?

时间:2016-03-22 18:32:39

标签: python pandas matplotlib

我尝试在plot命令中使用label=None,在这种情况下matplotlib选择数据的键作为标签。我发现这种行为不直观,并且当我明确地设置它时,期望完全控制标签。 如何禁用涉及pandas数据帧数据的图的标签?

这是一个小例子,它显示了行为:

import matplotlib.pyplot as plt
import pandas as pd

df = pd.DataFrame({'x': [0, 1], 'y': [0, 1]})
plt.plot(df['x'], df['y'], label=None)
plt.legend(loc='best')

这导致以下情节:

enter image description here

如果它很重要,我现在正在使用matplotlib 1.5.1版和pandas版本0.18.0在以下从macports安装的python中: Python 2.7.11(默认,2016年3月1日,18:40:10) [达尔文的GCC 4.2.1兼容的Apple LLVM 7.0.2(clang-700.1.81)]

2 个答案:

答案 0 :(得分:3)

如果您传递一个空字符串,则会产生此图:

import matplotlib.pyplot as plt
import pandas as pd

df = pd.DataFrame({'x': [0, 1], 'y': [0, 1]})
plt.plot(df['x'], df['y'], label='')
plt.legend(loc='best')

enter image description here

答案 1 :(得分:1)

只需传递一个空标签。在这种情况下,Matplotlib并不打扰制作图例条目。 label=None参数是默认值,绘图函数会检测该参数,告诉它构成标签。

(当然,在这种情况下,您可以不使用plt.legend ...)