【发布时间】:2019-04-23 06:38:30
【问题描述】:
我正在寻找一种方法来更改 matplotlib 散点图的 默认 边缘颜色。通常,这样的事情会通过rcParams设置,我的理解是我应该设置patch.edgecolor。但是,这似乎不起作用。这是一个例子:
import numpy as np
from matplotlib import pyplot as plt
x = np.random.randn(50)
y = np.random.randn(50)
with plt.rc_context({'patch.edgecolor': 'white'}):
plt.subplot(121)
plt.scatter(x, y)
plt.subplot(122)
plt.scatter(x, y, edgecolors='white')
在结果中,我希望两个子图看起来相同,但它们看起来像这样:
请注意,我不想更改 with 语句中的代码,而是配置 matplotlib 以便在我未指定其他任何内容时使用白色边缘作为后备。令人困惑的是,documentation 在函数签名中使用了默认参数edgecolors=None,但声明edgecolors 的默认值为'face'。我该如何改变这种行为?
【问题讨论】:
-
目前看来没有这种可能。阅读 this 上的 cmets。目前可以默认设置的标记属性有
plt.rcParams["lines.markeredgewidth"] = 2、plt.rcParams["lines.markersize"] = 10和plt.rcParams["scatter.marker"] = 'o'
标签: python matplotlib