2012-09-10 48 views
0

我使用matplotlib绘制了许多不同颜色的条形图。我还在散点图上绘制了一些标记。matplotlib中的反色标记

由于我已经为酒吧使用了许多不同的颜色,因此我不希望为这些标记使用单独的对比颜色,因为这会为我可以选择酒吧的颜色空间增加一个很大的限制。

因此,问题在于是否可以使用散布绘制标记,而不是使用给定的颜色,而是使用颜色与恰好位于任何给定标记之后的颜色相反的颜色,无论它放置在何处。

此外,请注意标记可能会完全重叠条,部分重叠条或者根本不重叠条。

+0

你为什么不在这里放一些代码示例,这样我们可以有一个更好的起点来帮助你?我真的很想,但我需要考虑一个例子,并将它们分散在一起... – Oz123

+0

Oz123,基本上只是创建一个坐标轴并执行axes.bars()和axes.scatter()没有更多的想象力它比那。 – wich

回答

0

我在这里发布了一个示意性的方法,如何解决你的问题与任何真正的Python代码,但它可能会有所帮助。
实际绘制时,您需要将全部内容存储在某种类型的两个列表中,以便您稍后访问它们。

  • 对于每个元素,条形图和标记可以得到颜色。
  • 对于每个标记,你可以找到它是否重叠或在一个条内,例如你可以使用matplotlib本身的nxutils.pntpoly() [指向多边形测试]。
  • 现在你可以决定最好的颜色。如果你知道在RGB格式,你可以 计算使用您可以定义一些简单的规则标记的完成颜色栏的颜色。
  • 当您获得颜色时,请使用方法set_color()或对象具有的适当方法。
+0

这会变得非常复杂,过于快速,也可能从头开始构建一个位图...问题是如果标记部分覆盖一个条,它甚至可能需要多彩,另外标记大小以点为单位,而条的大小是在轴坐标其中复杂的事情 – wich

+0

试想一下,一个会使用分散放置标记任意全色图像上,在这种情况下,伪彩“反转”将要走的路。基本上,我想给带参数的功能恰好是在剧情对于任何给定像素传递给散射颜色的颜色。有点像像素着色器。虽然只是让颜色“倒置”当然会简单得多还在,但我已经聚集是不可用 – wich

+0

@wich,为什么你开始与“想象”的评论。这是Stackoverflow,而不是一个科幻小说论坛。发布一些代码,所以我们可以从某个地方开始! – Oz123