📅  最后修改于: 2023-12-03 15:08:44.131000             🧑  作者: Mango
在 Pandas 中,我们可以轻松地创建图表,包括散点图、线图、柱状图等等,但是默认的图例可能并不是我们想要的。在本文中,我们将介绍如何在 Pandas 中重新定义图例。
我们可以通过修改图例标签来重新定义图例。下面是一个简单的示例:
import pandas as pd
import matplotlib.pyplot as plt
# 创建数据
data = {'a': [1, 2, 3], 'b': [4, 5, 6]}
df = pd.DataFrame(data)
# 绘制图表
ax = df.plot(kind='bar', rot=0)
# 修改图例标签
ax.legend(['A', 'B'])
plt.show()
在这个例子中,我们创建了一个简单的数据框,并绘制了一个柱状图。默认的图例标签是列名(即'a'和'b'),我们通过在ax.legend()
中传入一个列表来修改图例标签为'A'和'B'。
除了修改图例标签外,我们还可以添加图例标题。下面是一个示例:
import pandas as pd
import matplotlib.pyplot as plt
# 创建数据
data = {'a': [1, 2, 3], 'b': [4, 5, 6]}
df = pd.DataFrame(data)
# 绘制图表
ax = df.plot(kind='bar', rot=0)
# 修改图例标签
ax.legend(['A', 'B'], title='Legend')
plt.show()
在这个示例中,我们通过在ax.legend()
中传入title
参数来添加图例标题。
如果我们不希望在绘制的图表中显示图例,可以使用ax.get_legend().remove()
将图例隐藏。下面是一个示例:
import pandas as pd
import matplotlib.pyplot as plt
# 创建数据
data = {'a': [1, 2, 3], 'b': [4, 5, 6]}
df = pd.DataFrame(data)
# 绘制图表并隐藏图例
ax = df.plot(kind='bar', rot=0)
ax.get_legend().remove()
plt.show()
在这个示例中,我们调用了ax.get_legend().remove()
来隐藏图例。
最后,我们还可以自定义图例。这个方法较为复杂,需要使用ax.add_artist()
来添加自定义图例。下面是一个示例:
import pandas as pd
import matplotlib.pyplot as plt
# 创建数据
data = {'a': [1, 2, 3], 'b': [4, 5, 6]}
df = pd.DataFrame(data)
# 绘制图表
ax = df.plot(kind='bar', rot=0)
# 添加自定义图例
hand, labl = ax.get_legend_handles_labels()
ax.clear()
ax.add_artist(ax.legend(hand[0:2], labl[0:2], loc='upper left'))
ax.add_artist(ax.legend(hand[2:], labl[2:], loc='upper right'))
plt.show()
在这个示例中,我们先绘制了一个简单的柱状图,然后使用ax.get_legend_handles_labels()
获取图例的句柄和标签,随后通过ax.clear()
清除原始的图例。最后,我们使用ax.add_artist()
添加自定义图例,其中hand[0:2], labl[0:2]
指前两个条目,hand[2:], labl[2:]
指后两个条目。
本文介绍了在 Pandas 中重新定义图例的四种方法:修改图例标签、添加图例标题、隐藏图例和自定义图例。无论你是初学者还是有经验的 Python 开发人员,这些方法都可以帮助你轻松地调整和优化你的数据可视化。