Matplotlib Contourf Plots Unwanted Outlines when Alpha < 1
Asked Answered
A

1

8

I am using matplotlib in Python 2.7 to plot a filled contour plot. I want to overlay this over an image, so I am using the alpha keyword to make the plot semi-transparent. When I do this, the body of the contours are the correct transparency, but contourf() plots unwanted lines on the boundaries between different levels. I have attempted to eliminate them with the keyword argument linecolor='none', but this has not helped.

Code:

CS = map.contourf(xi, yi, zi, 25, alpha=0.3, linecolor='none')

A link to an image example of the problem; I would like the filled contours to meet without the bright boundary lines:

Any help or insight into this problem is appreciated.

Attica answered 4/3, 2013 at 0:23 Comment(0)
A
14

Try turn on antialiased=True:

x, y = np.mgrid[-1:1:100j, -1:1:100j]
contourf(x, y, x**2+y**2 + np.random.rand(100, 100)*0.1, 10, alpha=0.3, antialiased=True)

here is my result:

enter image description here

Ause answered 4/3, 2013 at 1:23 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.