如何移除散点图的数据点标记,仅保留文本标注?
解决方案
嘿,这个需求很好实现,只要对原脚本做两处简单调整就行:
- 直接删掉生成圆形标记的
ax.scatter(Y0_mean, Y1_mean)这一行(这行就是绘制散点圆点的核心代码) - 因为没有了散点元素,原有的
ax.legend(fontsize=8)会生成空图例,建议也删掉这行避免界面冗余
修改后的完整脚本如下:
fig, ax = Plot.subplots() # 移除散点绘制代码,不再显示圆形标记 for i, txt in enumerate(features.playerCountry.unique()): country_name = countries_code[countries_code.CountryCode == txt]['ctr'].values[0].lower() ax.annotate(country_name, (Y0_mean[i], Y1_mean[i]), xytext=(Y0_mean[i], Y1_mean[i]), size=5) # 移除空图例生成代码 fig.savefig(figPath + 'LocationAware...')
小补充
其实ax.annotate()的xytext参数如果和坐标点完全一致,是可以省略的,默认就会把文本放在指定坐标位置,简化后的写法更清爽:
ax.annotate(country_name, (Y0_mean[i], Y1_mean[i]), size=5)
内容的提问来源于stack exchange,提问作者YNR
相关产品推荐
相关产品推荐

