1

matplotlib多くの異なる色で棒グラフを描画するために使用しています。また、散布図に多数のマーカーを描画します。

私はすでにバーに多くの異なる色を使用しているため、バーを選択できる色空間に大きな制限が加えられるため、マークに個別の対照的な色を使用したくありません.

したがって、問題は、特定の色ではなく、任意のマークがどこに配置されていても、たまたま特定のマークの背後にある色の逆の色を使用して、スキャッター ドロー マークを作成できるかどうかです。

また、マークがバーに完全に重なったり、バーに部分的に重なったり、バーにまったく重ならなかったりする場合があることに注意してください。

4

1 に答える 1

0

私はここに、実際のP​​ythonコードなしで問題を解決する方法の概略的なアプローチを投稿しますが、それは役立つかもしれません。
実際にプロットするときは、すべてをある種の2つのリストに格納する必要があります。これにより、後でそれらにアクセスできるようになります。

  • 各要素、バー、マーカーについて、色を取得できます。
  • マーカーごとに、マーカーが重なっているのか、バーの内側にあるのかを確認できます。たとえばnxutils.pntpoly()、matplotlib自体の[ポリゴンテストのポイント]を使用できます。
  • 今、あなたは最高の色を決めることができます。RGB形式のバーの色がわかっている場合は、定義できるいくつかの簡単なルールを使用して、マーカーの完全な色を計算できます。
  • 色を取得したら、メソッドset_color()またはオブジェクトが持つ適切なメソッドを使用します。
于 2012-09-11T06:14:23.173 に答える