Объединение plt.plot (x, y) с plt.boxplot () - PullRequest
13 голосов
/ 09 мая 2011

Я пытаюсь объединить обычный matplotlib.pyplot plt.plot(x,y) с переменной y как функцию переменной x с боксплотом. Тем не менее, я хочу, чтобы блокпост только в определенных (переменных) местах x, но это не похоже на работу в matplotlib?

1 Ответ

20 голосов
/ 09 мая 2011

Вы хотите что-то подобное? От positions kwarg до boxplot позволяет размещать боксы в произвольных позициях.

import matplotlib.pyplot as plt
import numpy as np

# Generate some data...
data = np.random.random((100, 5))
y = data.mean(axis=0)
x = np.random.random(y.size) * 10
x -= x.min()
x.sort()

# Plot a line between the means of each dataset
plt.plot(x, y, 'b-')

# Save the default tick positions, so we can reset them...
locs, labels = plt.xticks() 

plt.boxplot(data, positions=x, notch=True)

# Reset the xtick locations.
plt.xticks(locs)
plt.show()

enter image description here

...