Есть ли способ установить шкалу y в морском заливе? - PullRequest
0 голосов
/ 25 января 2020

Я использую Facetgrid для построения нескольких наборов данных с Seaborn.

Мои столбцы "Parameter1", которые содержат категории "A" и "B". Мои строки "Parameter2", которые содержат категории "1" и "2"

Ax1 и Ax2, лучше всего представлены в линейном масштабе. Bx1 и Bx2 лучше всего изображать в логарифмическом масштабе. Можно ли как-нибудь условно установить yscale для log или linear в зависимости от моего Parameter1? Я пытался найти хороший способ сделать это, но не смог что-то выяснить. Извините, все еще новичок.

Пример моего кода приведен ниже. Любая помощь приветствуется!

g = sns.FacetGrid(df,col="parameter1", row="parameter2", 
                  hue='Conditions', sharex=True, height=6, aspect=2, 
                  margin_titles=True)

(g.map(sns.lineplot, "x_values", "y_values", marker="o", err_style="bars", linewidth=5, 
       markersize=13))
g.set(xlim=(0,40), xticks=[0, 5, 10, 15, 20, 25, 30, 35, 40], yscale='log')

1 Ответ

0 голосов
/ 27 января 2020

.set_yscale ("log") не был распознан как функция для меня (возможно, проблема с версиями?). Тем не менее, вы действительно помогли мне понять, как форматировалась информация об осях. Я закончил тем, что использовал это.

for x in range(3):
    g.axes[x,1].set(yscale="log", ylim=(0.001,1.2))
...