2024-09-30 18:15:04 发布
网友
我想从Matplotlib集合中检索标记类型。在
我可以通过调用collection.get_线型(), collection.get_线宽(),等等,但似乎没有标记的选项。 我还可以从matplotline.line.line2d一
有没有办法从集合中检索标记类型?在
我认为您无法检索到PathCollection(即散点图)中使用的标记类型。此信息不会像这样存储在集合中。但是,标记存储为Path对象(因此是集合的名称)。在
PathCollection
Path
例如:
fig, ax = plt.subplots() a = ax.scatter([0],[0],marker='v') b = ax.scatter([1],[0],marker='s') a.get_paths()
(Path(array([[-6.123234e-17, -5.000000e-01], [ 5.000000e-01, 5.000000e-01], [-5.000000e-01, 5.000000e-01], [-6.123234e-17, -5.000000e-01]]), array([ 1, 2, 2, 79], dtype=uint8)),)
可以推测,三角形标记由4个点定义(请注意,最后一个点等于第一个点,因此形状是闭合的)。在
(Path(array([[-0.5, -0.5], [ 0.5, -0.5], [ 0.5, 0.5], [-0.5, 0.5], [-0.5, -0.5]]), array([ 1, 2, 2, 2, 79], dtype=uint8)),)
相反,正方形标记由5个点定义(最后一个点==第一个点)。在
如果目标是将此标记复制到新集合,则应该能够将路径对象复制到另一个集合上。如果您需要某种方式来检测使用了哪个标记,可以保留一个Paths对象列表(如上所示生成),并将返回的路径与该列表进行比较。在
我认为您无法检索到
PathCollection
(即散点图)中使用的标记类型。此信息不会像这样存储在集合中。但是,标记存储为Path
对象(因此是集合的名称)。在例如:
可以推测,三角形标记由4个点定义(请注意,最后一个点等于第一个点,因此形状是闭合的)。在
^{pr2}$相反,正方形标记由5个点定义(最后一个点==第一个点)。在
如果目标是将此标记复制到新集合,则应该能够将路径对象复制到另一个集合上。如果您需要某种方式来检测使用了哪个标记,可以保留一个Paths对象列表(如上所示生成),并将返回的路径与该列表进行比较。在
相关问题 更多 >
编程相关推荐