将文本数据添加到未知的特定散点
Add text data to specific scatter points that aren't known
我有一个看起来像这样的散点图:
我可以使用以下代码将列表中的文本添加到每个散点:
# Add text names to the plot
for i, txt in enumerate(names):
ax.annotate(txt, (x[i],y[i]), alpha=0.6)
但是我只想注释在 x-axis
上超过 2
和在 y-axis
上超过 2
的点。我该怎么做呢? Matplotlib 文档没有给我关于标记特定点的信息,除非我已经确切地知道我要编辑哪些点(在这种情况下,我不知道)。
您可以尝试在注释之前检查点的值。
例如
for i, txt in enumerate(names):
if x[i] > 2 and y[i] > 2:
ax.annotate(txt, (x[i], y[i]), alpha=0.6)
也许您要求注释 x-axis
上 2
之后的所有点和 y-axis
上 2
之后的所有点。如果是这样,这是这样做的方法:
for i, txt in enumerate(names):
if x[i] > 2 or y[i] > 2:
# annotate only if a point is having either x > 2 or y > 2.
ax.annotate(txt, (x[i], y[i]), alpha=0.6)
我有一个看起来像这样的散点图:
我可以使用以下代码将列表中的文本添加到每个散点:
# Add text names to the plot
for i, txt in enumerate(names):
ax.annotate(txt, (x[i],y[i]), alpha=0.6)
但是我只想注释在 x-axis
上超过 2
和在 y-axis
上超过 2
的点。我该怎么做呢? Matplotlib 文档没有给我关于标记特定点的信息,除非我已经确切地知道我要编辑哪些点(在这种情况下,我不知道)。
您可以尝试在注释之前检查点的值。
例如
for i, txt in enumerate(names):
if x[i] > 2 and y[i] > 2:
ax.annotate(txt, (x[i], y[i]), alpha=0.6)
也许您要求注释 x-axis
上 2
之后的所有点和 y-axis
上 2
之后的所有点。如果是这样,这是这样做的方法:
for i, txt in enumerate(names):
if x[i] > 2 or y[i] > 2:
# annotate only if a point is having either x > 2 or y > 2.
ax.annotate(txt, (x[i], y[i]), alpha=0.6)