Matplotlib scatter():大小,标记形状的默认值

时间:2015-10-04 16:50:35

标签: python matplotlib

有没有办法为matplotlib s设置默认标记大小(plt.scatter())参数(或同样设置标记的形状)?

mpl.rcParams.keys()具有线图的设置,例如

import matplotlib as mpl
mpl.rcParams['lines.marker']='D'

...但它们似乎与plt.scatter()无关。

感谢。

澄清:

我想使用像mpl.rcParams()这样的配置机制,或者其他一些合理的文明方法。本地修改库代码不是它。

另一方面,如果目前无法完成并且有人向Matplotlib提交补丁,那将是非常棒的。

3 个答案:

答案 0 :(得分:1)

在当前版本中,标记大小定义为:

“以点为单位的标记大小**2。默认为rcParams['lines.markersize'] ** 2。”

所以现在设置 rcParams['lines.markersize'] 也应该改变散点图的默认标记大小。见https://matplotlib.org/stable/api/_as_gen/matplotlib.pyplot.scatter.html

答案 1 :(得分:0)

当然有,pyplot.py

他们代码中的代码段:

def scatter(x, y, s=20, c=None, marker='o', cmap=None, norm=None, vmin=None,
            vmax=None, alpha=None, linewidths=None, verts=None, edgecolors=None,
            hold=None, data=None, **kwargs):

尺寸设置为20 s=20,标记形状为圆圈marker='o',与其文档一致

答案 2 :(得分:0)

在当前版本的matplotlib(http://matplotlib.org/users/customizing.html)中无法实现。

但是,可以选择在GitHub上更改主分支中的默认标记(https://github.com/matplotlib/matplotlib/blob/master/lib/matplotlib/rcsetup.py#L1112)。