如何在Python中绘制一组点?

3
我有一组由 Python 程序创建的点,它们属于不同的聚类。我想在图表上绘制这些点,以便不同聚类中的点用不同的颜色绘制。
更新:
在我的情况下,我有一组单变量数据(一次测试的分数),正在寻找一种绘制方法。
我有两个聚类存储在两个数组中,例如:x=[1,20,10,4]y=[1644,34444]。我希望将其绘制成一个聚类的形式。

你能展示一下数据长什么样子吗?然后我可以建议使用哪个函数来绘制。 - anijhaw
希望现在问题已经清楚了。 - user567879
这些点是像(1,1644),(20,1644)....(1,34444)....这样的吗? - anijhaw
没有。x和y是两个不同的簇。 - user567879
但是任何情节都需要一个 x 和 y 坐标,这里的 x 是什么,y 是什么? - anijhaw
3个回答

8

您可以使用matplotlib。我不确定是否完全理解您的需求,但可能是类似于这样的内容:

from pylab import *
for (x, y) in clusters:
    plot(x, y, '+')
show() # or savefig(<filename>)

小心,from ... import * 不是一个好的实践方式... 在这里 from pylab import plot, show 就足够了。 - Emmanuel
5
@Emmanuel:不必太过于严格地遵守指南。pylab是matplotlib的一部分,旨在交互式绘图(取代matlab的绘图),因此from pylab import *是常见的用法。但实际上并不会在生产代码中使用-对于此,您只需要使用常规的matplotlib API和类即可。 - Eli Bendersky
谢谢提供信息。如果您能讲解如何绘制一维数据(例如考试成绩),那将非常有帮助。 - user567879

0

matplotlib 是一个易于使用的绘图库。应该可以满足您的需求。假设您的问题不是聚类本身的问题,您应该能够使用该库来实现您想要的功能。

我还尝试过 Chaco。它有一个更陡峭的学习曲线,但具有一些很棒的功能(例如,如果您想与数据交互)。


0

svg.charts 是一个很好的模块,可以在 PyPI 上找到。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接