gpt4 book ai didi

python - 如何获取matplotlib中所有标记的列表?

转载 作者:行者123 更新时间:2023-12-04 16:27:47 24 4
gpt4 key购买 nike

我生成的图表有很多行,我想自动使用颜色和标记来区分它们。

我试过这个:

for i,studyDframeTuple in enumerate(studyDframeTuples):
time = studyDframeTuple[1]['time']
error = studyDframeTuple[1]['Linf velocity error']
caseName = studyDirs[studyDframeTuple[0]]
ax.plot(time, error, marker = i % 12, label=caseName)

哪个流传 marker超过 (0,11)。这种作品,因为某种原因 marker < 12 .当我使用 marker = i % 20 , 我收到一个错误 makerstyle 12 is unknown .

这是我正在生成的图表的示例,它并不漂亮,仅用于检查测试结果:

enter image description here

这些图表是由具有不同参数的测试产生的,因此需要迭代所有可用的颜色、线型和标记,以确保当我在图表上有 100 条线时,我可以区分属于分解解决方案的那些(值像这个图上的 1e15)。

如何将 matplotib 中的所有标记放在一个列表中并遍历它们?

编辑 :

我像这样黑了我自己的 list
mStyles = [".",",","o","v","^","<",">","1","2","3","4","8","s","p","P","*","h","H","+","x","X","D","d","|","_",0,1,2,3,4,5,6,7,8,9,10,11
]

但是当这种情况发生变化时怎么办?我可以从 matplotlib 以编程方式获取此列表吗?

最佳答案

12 不作为标记值存在。您可以使用以下命令获得所有现有标记的字典:

from matplotlib.lines import Line2D
print(Line2D.markers)

输出:

{'.': 'point',
',': 'pixel',
'o': 'circle',
'v': 'triangle_down',
'^': 'triangle_up',
'<': 'triangle_left',
'>': 'triangle_right',
'1': 'tri_down',
'2': 'tri_up',
'3': 'tri_left',
'4': 'tri_right',
'8': 'octagon',
's': 'square',
'p': 'pentagon',
'*': 'star',
'h': 'hexagon1',
'H': 'hexagon2',
'+': 'plus',
'x': 'x',
'D': 'diamond',
'd': 'thin_diamond',
'|': 'vline',
'_':'hline',
'P': 'plus_filled',
'X': 'x_filled',
0: 'tickleft',
1: 'tickright',
2: 'tickup',
3:'tickdown',
4: 'caretleft',
5: 'caretright',
6: 'caretup',
7: 'caretdown',
8: 'caretleftbase',
9: 'caretrightbase',
10: 'caretupbase',
11: 'caretdownbase',
'None': 'nothing',
None: 'nothing',
' ': 'nothing',
'': 'nothing'}

关于python - 如何获取matplotlib中所有标记的列表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59647765/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com