我可以在点图上更改一个标记大小吗?

时间:2016-07-21 06:29:06

标签: matplotlib data-visualization seaborn

使用Seaborn的pointplot我创建了以下图片:

pointplot

我想知道我是否可以将每个标记的大小更改为唯一值。

图像是通过调用

制作的
sns.pointplot(x = 'Partying',
              y = 'Province', 
              ci =95,
              data = df, 
              join = False, 
              ax = ax,
              color = pal[2],


              )

我认为将数组传递到scale参数会起作用,但事实并非如此。

1 个答案:

答案 0 :(得分:2)

不是通过seaborn API,但可以通过在绘图后操作matplotlib对象来实现 - 例如:

import seaborn as sns
tips = sns.load_dataset("tips")

ax = sns.pointplot(x="tip", y="day", data=tips, join=False)
points = ax.collections[0]
size = points.get_sizes().item()
new_sizes = [size * 3 if name.get_text() == "Fri" else size for name in ax.get_yticklabels()]
points.set_sizes(new_sizes)

enter image description here