Matplotlib散射标记大小

时间:2013-10-18 13:51:50

标签: python matplotlib size scatter-plot

我正在尝试使用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'

如果不这样,情节就可以了。问题出在哪儿?还是有另一种方法来改变大小?

1 个答案:

答案 0 :(得分:13)

此函数在关键字args:

之前引入两个args

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

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

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

from mpl_toolkits.mplot3d import Axes3D
Axes3D.scatter( ... )