Matplotlib散射标记大小

问题描述 投票:7回答:1

我正在尝试使用matplotlib绘制3D散射问题是我无法更改标记的大小我有这个

scat = plt.scatter([boid_.pos[0] for boid_ in flock],
                   [boid_.pos[1] for boid_ in flock],
                   [boid_.pos[2] for boid_ in flock], 
                   marker='o', s=5)

但是我得到了错误

TypeError: scatter() got multiple values for keyword argument 's'

没有它,情节工作正常。问题出在哪儿?还是有另一种方法来改变大小?

python matplotlib size scatter-plot
1个回答
13
投票

此函数在关键字args之前接受两个args:

scatter(x, y, s=20, ...)

你传递三个,所以你指定s两次(一次隐式和一次明确)。

实际上,我认为您正在尝试使用2D散点图函数而不是3D散点图函数。您可能想要这样做:

from mpl_toolkits.mplot3d import Axes3D
Axes3D.scatter( ... )
© www.soinside.com 2019 - 2024. All rights reserved.