如何在 matplotlib 中删除图例(附示例)
您可以使用以下基本语法从 Matplotlib 图中删除图例:
import matplotlib. pyplot as plt
plt. legend ('', frameon= False )
‘ ‘引号告诉 Matplotlib 不要在图例中放置任何变量, frameon参数告诉 Matplotlib 删除图例周围的框架。
以下示例展示了如何在实践中使用此语法。
示例:删除 Matplotlib 中的图例
假设我们有以下 pandas DataFrame,其中包含有关各种篮球运动员的信息:
import pandas as pd
#createDataFrame
df = pd. DataFrame ({' team ': ['A', 'A', 'A', 'A', 'B', 'B', 'B', 'B'],
' position ': ['G', 'G', 'F', 'F', 'G', 'F', 'F', 'F'],
' points ': [5, 7, 7, 9, 12, 9, 9, 4]})
#view DataFrame
print (df)
team position points
0 AG 5
1 AG 7
2AF 7
3 AF 9
4 BG 12
5 BF 9
6 BF 9
7 BF 4
我们可以使用以下代码创建一个堆积条形图,以可视化每个球队和位置上球员的总得分:
import matplotlib. pyplot as plt
#create stacked bar chart
df. groupby ([' team ', ' position ']). size (). unstack (). plot (kind=' bar ', stacked= True )
请注意,Matplotlib 默认将图例放置在右上角。
要创建没有图例的相同绘图,您可以使用以下代码:
import matplotlib. pyplot as plt
#create stacked bar chart
df. groupby ([' team ', ' position ']). size (). unstack (). plot (kind=' bar ', stacked= True )
#remove legend
plt. legend ('', frameon= False )
此堆叠条形图与上一个图表匹配,但图例已被删除。
另请注意,我们可以使用相同的语法从 Matplotlib 中的任何图中删除图例。
例如,以下代码显示了如何在 Matplotlib 中创建饼图并删除图例:
import matplotlib. pyplot as plt #create pie chart that shows total points scored by team df. groupby ([' team ']). sum (). plot (kind=' pie ', y=' points ') #remove legend plt. legend ('', frameon= False )
结果是一个没有图例的饼图。
其他资源
以下教程解释了如何在 Matplotlib 中执行其他常见任务:
如何从 Matplotlib 图中删除刻度
如何更改 Matplotlib 绘图上的字体大小
如何在 Matplotlib 中添加平均线