首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >pyplot.scatter缩小标记大小

pyplot.scatter缩小标记大小
EN

Stack Overflow用户
提问于 2022-03-18 19:43:02
回答 1查看 1K关注 0票数 1

这里是一个高二维点密度散点图的例子,仅供参考。

如何缩小标记的大小以更好地区分各个点?情节的大小应该保持原样。

代码语言:javascript
复制
import numpy as np
import matplotlib.pyplot as plt
from sklearn import preprocessing
from matplotlib import cm

np.random.seed(10)

n=3000

x = np.arange(n)
z = np.sin(x/n)
y = np.random.randint(0, 100, size=(n))

colvals = preprocessing.minmax_scale(z)

plt.scatter(x, y, color=cm.rainbow(colvals), marker='.')
plt.xlabel('x')
plt.ylabel('y')

plt.show()

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-03-18 22:51:11

plt.scatter有一个参数s,用于控制标记大小。

  • s可以是适用于所有点的单个浮点数,例如大小为5的所有点:

S=5 plt.scatter(x,y,color=cm.viridis(色),marker='.',s=s)

  • s可以是映射到每个点的大小数组,例如,当z > 0.5和30大小不对应时,大小为5:

S= np.where(z > 0.5,5,30) plt.scatter(x,y,color=cm.viridis(色),标记=‘.’,s=s)

请注意,要匹配散布标记和绘图标记的大小,绘图标记的markersize应该是散布标记的s的平方根

代码语言:javascript
复制
s = 900

plt.scatter(-1, 0, s=s, color='tab:orange')
plt.plot(1, 0, 'o', markersize=s ** 0.5)

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71532418

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档