2016-12-12 8 views
0

Angesichts der folgenden:Matplotlib Plot Eine gestrichelte Kreise

import matplotlib.pyplot as plt 
import numpy as np 

x = np.random.randn(60) 
y = np.random.randn(60) 
x2 = np.random.randn(60) 
y2 = np.random.randn(60) 

plt.scatter(x, y, s=80, facecolors='none', edgecolors='r') 
plt.scatter(x2, y2, s=80, facecolors='none', edgecolors='r') 
plt.show() 

Wie würde ich diese gleichen Daten mit gestrichelten Kreise zeichnen statt (wo der Umriss jedes Kreises anstelle von festen gestrichelt) für x 2 und nur y2?

Vielen Dank im Voraus!

Update: Ich weiß, das mit Flecken wie in here getan werden kann, aber ich muss es über plt.scatter wenn möglich durchgeführt werden, weil ich auch einen weiteren Satz von Kreisen auf dem gleichen Grundstück werden Plotten und mit Patches, die mit den Chart-Dimensionen verwechselt wurden (war viel zu dünn).

Antwort

2

Übergeben Sie linestyle='--' zu scatter.

plt.scatter(x, y, s=80, facecolors='none', edgecolors='r') 
plt.scatter(x2, y2, s=80, facecolors='none', edgecolors='r', 
      linestyle='--') 

enter image description here

Für diese Markergröße würde ich eher linestyle=':' obwohl verwenden.

+0

Danke, Goyo. Hier ist die Frage, die ich in erster Linie hätte stellen sollen: http://stackoverflow.com/questions/41108055/matplotlib-plot-dashed-circles-using-plt-plot-instead-of-plt-scatter –