Matplotlib を使用して、半透明の面の色と不透明 (アルファ = 1) のエッジの色を持つ一連のマーカー (一度に 1 つずつ) をプロットしたいと思います。これは、適切なrgba値を使用してプロットコマンドでそれぞれを設定することで簡単に見えますが(この回答で提案されているように)、機能していませんサンプルコード(問題をよりよく説明するために元の投稿から更新):
N = 48
xys = np.random.rand(N,2)
markers = []
fig = plt.figure()
ax = fig.add_subplot(111)
for i in range(N):
m = ax.plot(
xys[i,0], xys[i,1],
linestyle='None', marker='o', markersize=20,
markeredgewidth=4, markeredgecolor=(0, 0, 0, 1.0),
markerfacecolor=(1, 0, 0.2, 0.1),
)[0]
ax.grid()
ax.set_axisbelow(True)
fig.savefig('scratch_fig.png', dpi=300)
それは私にこのプロットを与えます: http://imgur.com/pcCQlSV
ご覧のとおり、エッジは正しく、真っ黒です。しかし、互いに重なっているマーカーとグリッドを見ると、それらが半透明ではないことがわかります。
Windows 7 と Ubuntu の両方で Matplotlib 1.2.1 を使用してこの結果を生成しました
重複するマーカーを 2 セット作成せずに、これを修正する方法を知っている人はいますか?