Zorder не работает должным образом на нескольких графиках ошибок на одном рисункеPython

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Zorder не работает должным образом на нескольких графиках ошибок на одном рисунке

Сообщение Anonymous »

Я пытаюсь создать два линейных графика с полосой ошибок, используя основную и дополнительную оси Y на одном рисунке. Я хочу построить линию панели ошибок таким образом, чтобы она не перекрывала маркеры на линейных графиках. zorder здесь не работает должным образом. Полоса ошибок, соответствующая вторичной оси Y, всегда перекрывает маркеры линейного графика основной оси Y, но обратное значение не отображается.

Код: Выделить всё

data = {
'A': [439, 1263, 1631, 2059],
'A-std': [255, 829, 1058, 1365],
'B': [0.16, 0.39, 0.47, 0.58],
'B-std': [0.11, 0.18, 0.19, 0.18]}

df = pd.DataFrame(data)

fig, ax = plt.subplots(figsize=(5.0,4.0))
ccn_plot = ax.errorbar(df.index, df[df.columns[0]],
yerr=df[df.columns[1]], label='Blue', color= 'blue',
linewidth=4.0, elinewidth=2.0, ls='solid', capsize =5.0, zorder = 0)

ax1 = ax.twinx()
## Plotting AF data on the secondary y-axis
af_plot = ax1.errorbar(df.index, df[df.columns[2]],
yerr=df[df.columns[3]], label = 'Red', color = 'red',
linewidth = 4.0, elinewidth=2.0, ls='solid', capsize =5.0, zorder = 0)

ax.scatter(df.index, df[df.columns[0]],
marker='s', s=50, c = 'blue',
edgecolors='black',
zorder=10)

ax1.scatter(df.index, df[df.columns[2]],
marker='o', s=50, c = 'red',
edgecolors='black',
zorder=10)

## Collect legend handles and labels from both axes
primary_handles, primary_labels = ax.get_legend_handles_labels() # from primary y-axes
sec_handles, sec_labels = ax1.get_legend_handles_labels() # from secondary y-axe

## Combine handles and labels
all_handles = primary_handles + sec_handles
all_labels = primary_labels + sec_labels
ax.legend(all_handles, all_labels)

ax.set_ylabel('Blue')
ax1.set_ylabel('Red')
Изображение
Я не понимаю, почему отображается zorder такое странное поведение. Я хочу построить линию панели ошибок таким образом, чтобы она не перекрывала маркеры ни на одном из линейных графиков. Любая помощь очень признательна. Заранее спасибо.

Подробнее здесь: https://stackoverflow.com/questions/784 ... ame-figure
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Ищу опцию Cartopy для отображения земли поверх данных, когда zorder не работает
    Anonymous » » в форуме Python
    0 Ответы
    15 Просмотры
    Последнее сообщение Anonymous
  • Я пытаюсь изменить порядок сюжета здесь, но zorder не позволяет этого сделать.
    Anonymous » » в форуме Python
    0 Ответы
    20 Просмотры
    Последнее сообщение Anonymous
  • Zorder matplotlib не уважается между баром и сеткой, почему?
    Anonymous » » в форуме Python
    0 Ответы
    2 Просмотры
    Последнее сообщение Anonymous
  • Matplotlib: несколько легенд на одном рисунке
    Anonymous » » в форуме Python
    0 Ответы
    12 Просмотры
    Последнее сообщение Anonymous
  • Постройте панды, сгруппированные по коробчатому графику и графику данных на одном рисунке
    Anonymous » » в форуме Python
    0 Ответы
    11 Просмотры
    Последнее сообщение Anonymous

Вернуться в «Python»