【发布时间】:2020-12-11 11:28:14
【问题描述】:
我在自定义情节图例时遇到问题。我做了很多定制,但无法理解这一点。我希望符号(而不是标签)在图例中的间距相等。正如您在示例中看到的,图例中圆圈之间的空间随着圆圈变大而变小。 有任何想法吗? 另外,我怎样才能添加一个彩条(除了大小),小圆圈是浅红色(例如),大圆圈是蓝色(例如) 到目前为止,这是我的代码:
import pandas as pd
import matplotlib.pyplot as plt
from vega_datasets import data as vega_data
gap = pd.read_json(vega_data.gapminder.url)
df = gap.loc[gap['year'] == 2000]
fig, ax = plt.subplots(1, 1,figsize=[14,12])
ax=ax.scatter(df['life_expect'], df['fertility'],
s = df['pop']/100000,alpha=0.7, edgecolor="black",cmap="viridis")
plt.xlabel("X")
plt.ylabel("Y");
kw = dict(prop="sizes", num=6, color="lightgrey", markeredgecolor='black',markeredgewidth=2)
plt.legend(*ax.legend_elements(**kw),bbox_to_anchor=(1, 0),frameon=False,
loc="lower left",markerscale=1,ncol=1,borderpad=2,labelspacing=4,handletextpad=2)
plt.grid()
plt.show()
【问题讨论】:
-
由于图例也自动链接到标记,我们不能通过设置
*kw = dict(markerscale=None...)来改善这一点吗? -
不,它不会改变任何东西......
标签: python pandas matplotlib legend