我正在寻找一种可靠的方式来自动为我的情节选择线条样式。现在,我有8条线用于绘图,我希望自动选择彼此可区分的线型是可行的。
截至目前,我基本上有两种方法。设置标记或定义样式。两者似乎都对seaborn有一些问题。第一种是使用循环仪:
plt.rc('axes', prop_cycle=cycler('linestyle', ['-', '--', ':', '-.']))
如果我使用它,则它会覆盖seaborn设置,或者被seaborn覆盖,这取决于我首先设置的那个。
我在其中一个示例中找到了另一种方法,并设置了行的标记:
def makeStyles():
markers = []
for m in Line2D.markers:
try:
if len(m) == 1 and m != ' ':
markers.append(m)
except TypeError:
pass
styles = markers + [
r'$\lambda$',
r'$\bowtie$',
r'$\circlearrowleft$',
r'$\clubsuit$',
r'$\checkmark$']
return styles
这里的问题是,有些标记似乎是相同的,只是没有标记的一行。
还有其他可行的方法可以与Seaborn一起工作吗?
最佳答案
如果要保留在matplotlib中使用的rcParam,并使用最新版本的seaborn(> = 0.7.1),最简单的方法是按照what's new中的说明使用import seaborn.apionly
关于python - 在matplotlib中结合Seaborn自动选择线型的最可靠方法,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/38738019/