设置 pandas 图的图例位置
Set the legend location of a pandas plot
我知道如何使用 plt.legend(loc='lower left')
设置 matplotlib 图的图例位置,但是,我正在使用 pandas 方法 df.plot()
绘图,需要将图例位置设置为 'lower left'.
有人知道怎么做吗?
已编辑:我实际上正在寻找一种通过 pandas' df.plot()
而不是通过 plt.legend(loc='lower left')
的方法
编辑
为了澄清原始答案,目前无法通过 pandas.DataFrame.plot
进行此操作。在其当前实现(版本 1.2.3)中,plot
的 'legend'
参数仅接受布尔值或字符串 'reverse'
:
legend : False/True/'reverse'
Place legend on axis subplots
它不接受图例位置字符串。剩余的 **kwargs
被传递到对应于指定的 'kind'
参数(默认为 matplotlib.pyplot.plot
)的底层 matplotlib.pyplot
方法。 None 这些方法允许通过关键字参数进行图例定位。
因此,目前 唯一 方法是直接使用 plt.legend()
- 正如我在下面的原始答案中所述。
如评论所示,您必须使用 plt.legend(loc='lower left')
将图例放在左下方。即使使用 pandas.DataFrame.plot
- 也没有调整图例位置的参数,只有当图例被绘制时。这是一个显示用法的完整示例
import pandas as pd
import matplotlib.pyplot as plt
import numpy as np
x = np.linspace(0, 10, 100)
y = np.random.random(100)
df = pd.DataFrame({'x': x, 'y':y})
df.plot(kind='scatter', x='x', y='y', label='Scatter')
plt.legend(loc='lower left')
plt.show()
好吧,简单地链接它。
dframe.rank(ascending=False).plot(kind= 'bar').legend(loc='best')
假设 'dframe' 是一个 DataFrame。
我知道如何使用 plt.legend(loc='lower left')
设置 matplotlib 图的图例位置,但是,我正在使用 pandas 方法 df.plot()
绘图,需要将图例位置设置为 'lower left'.
有人知道怎么做吗?
已编辑:我实际上正在寻找一种通过 pandas' df.plot()
而不是通过 plt.legend(loc='lower left')
编辑
为了澄清原始答案,目前无法通过 pandas.DataFrame.plot
进行此操作。在其当前实现(版本 1.2.3)中,plot
的 'legend'
参数仅接受布尔值或字符串 'reverse'
:
legend : False/True/'reverse'
Place legend on axis subplots
它不接受图例位置字符串。剩余的 **kwargs
被传递到对应于指定的 'kind'
参数(默认为 matplotlib.pyplot.plot
)的底层 matplotlib.pyplot
方法。 None 这些方法允许通过关键字参数进行图例定位。
因此,目前 唯一 方法是直接使用 plt.legend()
- 正如我在下面的原始答案中所述。
如评论所示,您必须使用 plt.legend(loc='lower left')
将图例放在左下方。即使使用 pandas.DataFrame.plot
- 也没有调整图例位置的参数,只有当图例被绘制时。这是一个显示用法的完整示例
import pandas as pd
import matplotlib.pyplot as plt
import numpy as np
x = np.linspace(0, 10, 100)
y = np.random.random(100)
df = pd.DataFrame({'x': x, 'y':y})
df.plot(kind='scatter', x='x', y='y', label='Scatter')
plt.legend(loc='lower left')
plt.show()
好吧,简单地链接它。
dframe.rank(ascending=False).plot(kind= 'bar').legend(loc='best')
假设 'dframe' 是一个 DataFrame。