python - Matplotlib Legend 的一个问题
问题描述
这是我的 python 代码,用于显示火车票价、到伦敦的时间和到马厩的时间。出于某种原因,情节图例中有一个标有“票”的额外项目。这是什么,我该如何摆脱它?
此外,当我尝试包含 title_fontsize 参数时,我会被抛出:
__init__() 得到了一个意外的关键字参数“title_fontsize”
我将如何更改图例标题的大小?
import numpy as np
import pandas as pd
from matplotlib import pyplot as plt
flat_data = pd.read_csv("C:/BLAHBALHBLAH/flats.csv")
X = flat_data["commute"]
Y = flat_data["ticket"]
size = 180 * flat_data["stables"]
names = list(flat_data["location"])
plt.figure(figsize=(20,15))
plt.scatter(X,Y,s=size, alpha=0.4,cmap="bone",c="r")
plt.xlabel("Time to London (mins)")
plt.ylabel("Cost of Season Ticket (£)")
plt.axis([32,80,1500,5200])
plt.grid(False)
for index, name in enumerate(names):
plt.annotate(name, (X[index]-len(name)/6, Y[index]),size=15)
for time in [7,36]:
plt.scatter([], [], c='r', alpha=0.4, s=180*time, label=str(time) + ' mins')
plt.legend(frameon=False, labelspacing=4, title='Time to Stables', handletextpad =3,fontsize="x-large")
plt.show()
谢谢!
解决方案
关于您的额外图例,您应该在第一次调用时抑制图例条目scatter()
:
plt.scatter(X,Y,s=size, alpha=0.4,cmap="bone",c="r", label=None) # or label=""
推荐阅读
- angular - 从 api 获取角度插值错误
- ios - Flutter:无法为设备构建预编译的应用程序。在 iPhone 上启动应用程序时出错
- docker - Docker 容器端口冲突 Portainer/Sonarqube
- javascript - javascript函数在块语句中提升
- javascript - 如何判断用户是否正在为 contentEditable 元素进行内容编辑
- arm - 为什么需要内存别名?
- rabbitmq - 当 Rabbitmq 未确认消息增加时如何设置电子邮件或 splunk 警报
- python - YouTube 可恢复上传 HttpError 404
- r - 在R中输入多张Excel
- javascript - 使用 Javascript 在 onClick 调用中更新 td 单元格中的 href 链接文本