2017-02-01 5 views
1

Предположим, у меня есть данные с сеткой с размерами (x, y) и значения находятся в z. так просто мы можем сделать график рассеяния для третьего измерения по:удаление контура цветного графика рассеяния в 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

, что я имею в виду сейчас, чтобы удалить цвет линии каждой круговой диаграммы рассеяния. А также вместо круга мы можем сделать его квадратным?

Я не нашел способа сделать это. ваша помощь будет высоко оценена.

ответ

3
  • Передача аргумента edgecolors='none' - plt.scatter. Граница паттерна не будет нарисована.
  • Передайте аргумент marker='s' по номеру plt.scatter. Стиль маркера будет квадратным.

Тогда мы имеем,

enter image description here


Исходный код,

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() 

Обратитесь к matplotlib.pyplot.scatter для получения дополнительной информации.

+1

Также обратите внимание, что в 'matplotlib' 2.0.x поведение по умолчанию заключается в том, чтобы не рисовать ребра в диаграммах рассеяния (и других объектах) – tom

+0

@tom, thx для указания этого. – SparkAndShine

Смежные вопросы