2017-02-01 2 views
1

Angenommen, ich habe Daten mit Dimensionen gerastert (x, y) und Werte sind in z. so einfach können wir Streudiagramm für dritte Dimension machen durch:Entfernen der Umrissfarbe des Streudiagramms in Matplotlib python

import numpy as np 
import matplotlib.pyplot as plt 

x = np.random.random(10) 
y = np.random.random(10) 
z = np.random.random(10) 
plt.scatter(x, y, c = z, s=150, cmap = 'jet') 
plt.show() 

[1]: https://i.stack.imgur.com/2acLp.png

was ich denke jetzt ist die Linienfarbe jeder kreisförmigen Streudiagramm zu entfernen. Und auch statt Kreis können wir es quadratisch machen ??

Ich habe keine Möglichkeit gefunden, das zu tun. Ihre Hilfe wird sehr geschätzt.

Antwort

3
  • Übergeben Sie das Argument edgecolors='none' an plt.scatter. Die Patch-Grenze wird nicht gezeichnet.
  • Übergeben Sie das Argument marker='s' an plt.scatter. Der Markierungsstil wird quadratisch sein.

Dann haben wir

enter image description here


Der Quellcode,

import numpy as np 
import matplotlib.pyplot as plt 

x = np.random.random(10) 
y = np.random.random(10) 
z = np.random.random(10) 
plt.scatter(x, y, c = z, s=150, cmap = 'jet', edgecolors='none', marker='s') 
plt.show() 

für weitere Informationen zu matplotlib.pyplot.scatter finden.

+1

Beachten Sie auch, dass in 'matplotlib' 2.0.x das Standardverhalten darin besteht, die Kanten in Streudiagrammen (und anderen Objekten) nicht zu zeichnen – tom

+0

@tom, thx um darauf hinzuweisen. – SparkAndShine

Verwandte Themen