Python:如何绘制几乎没有重叠的点

时间:2015-05-14 08:08:52

标签: python matplotlib plot overlapping

我正在使用python绘制点数。该图显示了该区域与该区域的兴趣点数(POI)之间的关系。我有3000个面积值和3000个POI值。

现在情节如下: enter image description here

问题在于,在左下方,点彼此严重重叠,因此很难获得足够的信息。大多数地区并不大,他们没有很多兴趣点。

我想制作一个几乎没有重叠的情节。我想知道我是否可以使用不均匀分布的轴或使用直方图来制作漂亮的情节。谁能帮我?

2 个答案:

答案 0 :(得分:0)

我认为我们在这里有两个主要选择。首先调整此图,然后选择在另一种图中显示数据。

在第一个选项中,我建议剪切边界。边界周围有足够的空间。如果将绘图限制为边界,则数据会更好地扩展。最重要的是,您可以选择使用较小的点绘制点,以便它们看起来不那么重叠。

第二个选项是选择在不同视图中显示数据,例如直方图。这可以更好地了解您的数据在不同容器之间的分布。但就前一个情节而言,这将是完全不同的观点。

我建议尝试通过将绘图边界限制为数据点来调整绘图,以便绘图区域有足够的空间来缩放数据并稍后尝试使用直方图。但正如我所提到的,这些是两个不同的东西,会对您的数据提供不同的见解。

为了调整你可以试试这个:

x1,x2,y1,y2 = plt.axis()

plt.axis((x1,x2,y1,y2))

您可能需要对轴变量进行微调。请注意,应该有更好的选择,而不是这个,但这是我想到的第一件事。

答案 1 :(得分:0)

我建议使用y轴的对数刻度。您可以使用pyplot.semilogy(...)pyplot.yscale('log')http://matplotlib.org/api/pyplot_api.html)。

请注意不会呈现area <= 0的点。