2012-09-10 72 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