是plt.散射()冗余功能?

2024-10-04 01:29:03 发布

您现在位置:Python中文网/ 问答频道 /正文

我试着找到一些我只能做的事plt.散射,那个plt.绘图不能,但是使用Line2D args和其他所有东西,我觉得plt.散射基本上没用。在我尝试编写一个脚本来自动绘制一些用户指定的首选项之后,我遇到了这个窘境。一开始,似乎我必须在if条件下同时使用plot()和scatter(),如果用户只需要一个标记,只需要行或者两者都需要。但这根本没有必要。我知道这是一个开放式的问题,但在这一点上不应该被认为是一个弃用的函数吗?它所做的只是有一个不同的默认打印模式。如果我不想要线,我可以把线宽设为0,对吗?你知道吗


Tags: 函数用户标记脚本绘图ifplot绘制
1条回答
网友
1楼 · 发布于 2024-10-04 01:29:03

如果您想要一组单色单色标记,可以使用plt.plot(x,y, linestyle="none")而不是plt.scatter(x,y)plt.plot在这种情况下也更有效率。你知道吗

但是,如果要将信息编码为一组标记的大小或颜色,则需要使用plt.scatter(x, y, s=sizes, c=colors)。例如:

import numpy as np
import matplotlib.pyplot as plt

x, y, c, s = np.random.rand(4, 40)
s = s * 100 + 5

fig, ax = plt.subplots()
sc = ax.scatter(x, y, s=s, c=c)
fig.colorbar(sc)

ax.legend(*sc.legend_elements("sizes"), loc="upper left")

plt.show()

enter image description here

相关问题 更多 >