matplotlibのPatchCollectionは子パッチの色を上書きする
「matplotlib.patches.Circleのオプション引数fillが機能していない疑惑」の解決編
PatchCollectionはデフォルトでCircleなどのパッチで指定した色を上書きしてしまう。
Definition:PatchCollection(self, patches, match_original=False, **kwargs) (snip) *match_original* If True, use the colors and linewidths of the original patches. If False, new colors may be assigned by providing the standard collection arguments, facecolor, edgecolor, linewidths, norm or cmap.
これが僕のつまずいた「CircleのfillにFalseを指定したのに反映されない!なぜか青く塗られた丸が出る!」という現象の原因だった。PatchCollectionにfacecolor="none"を指定すれば塗りをなしにすることができる。(Noneではなく文字列の"none"であることに注意。thanks: hoge)