Создание коробочных диаграмм с указанием определенного диапазона значений для каждого столбца seaborn - PullRequest
0 голосов
/ 04 июня 2018

Немного сложнее объяснить.Я пытаюсь создать два вспомогательных участка, состоящих из гистограммы и коробочного графика, используя данные из одного и того же кадра данных (df), который имеет два столбца (разной длины) 'price_cml15' и 'price_nw15'.При создании этих графиков я хочу выбрать только подмножество данных из каждого столбца (как показано переменными minx и maxx, используемыми для выбора диапазона данных, который я хочу).В конечном счете, я хочу сделать цикл for, который проходит через различные диапазоны, который работает для гистограмм в данный момент, но я не могу сделать коробочные графики.С гистограммой все в порядке, я не могу понять, как получить коробочную диаграмму, чтобы показать этот конкретный диапазон для обоих столбцов.Используя приведенный ниже код (часть sns.boxplot), я могу извлечь диапазон из одного столбца (price_cml15), но не могу заставить его это сделать для обоих столбцов рядом в одном и том же блок-графике, и не могу получить его для меткиданные этого бокса правильно.Вот код, который у меня есть:

#creates overlapping histograms and boxplot for nw and cml dataframes#

#set minimum and maximum values for x axis#
minx = 0 
maxx = 500000 

#overlaps plots on top of eachother and sets figsize#
fig, ax = plt.subplots(1,2,figsize=(16,4))#,sharey=True, sharex=True)
#set number of bins#
n_bins=100

#selects columns from dataframe(df) to be plotted along with 
characteristics#
ax[0].hist(df['price_cml15'], bins=n_bins, range=(minx,maxx), normed=True, 
edgecolor='red', facecolor='None', linewidth=2, label='cml15')
ax[0].hist(df['price_nw15'], bins=n_bins, range=(minx,maxx), normed=True, 
color='blue', edgecolor='black', alpha = 0.5, linewidth=1, label='nw15')
ax[0].set_yticklabels([])
ax[0].legend()

sns.boxplot(data=(df.loc[(df['price_cml15']>= minx) & (df['price_cml15'] <= 
maxx), 'price_cml15']), ax=ax[1])

#saves fig as .png#
fig.savefig(r'A:\Live system\Monthly 
processing\NW_cml_15_100bins_0to500k.png')

Этот код создает следующие вложенные сюжеты, как вы можете видеть, он работает для одного столбца, но не пометил его должным образом, и я попыталсямногочисленные способы заставить это сделать это для обоих столбцов на одном и том же блокпосте, но безрезультатно.Любая помощь приветствуется!Как только я разобрался с этим, я думаю, что цикл for должен быть довольно простым.

Большое спасибо

Kat
пример токового выхода

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...