глобальная легенда для всех подзаговоров

Я создаю nxn-матрицу подзаголовков matplot, которые содержат один и тот же тип кривой (давайте назовите их signal1 и signal2):

n=5 f, axarr = plt.subplots(n,n) for i,signal_generator in enumerate(signal_generators): y=i%n x=(iy)/n axarr[x, y].plot(signal_generator.signal1) axarr[x, y].plot(signal_generator.signal2) 

Поскольку два сигнала в каждом подзаголовке представляют одинаковые типы, я хочу использовать цифровую глобальную легенду с сигналом 2 сигнала «2», а не прикреплять одну и ту же легенду к каждому подзаголовку.

Как мне это сделать?

One Solution collect form web for “глобальная легенда для всех подзаговоров”

Один из способов сделать это – заставить лишнее пространство под сюжетами. Тогда вы можете поместить легенду прямо там и иметь одну «глобальную» легенду.

 import matplotlib.pyplot as plt import numpy as np plt.close('all') fig, axlist = plt.subplots(3, 3) for ax in axlist.flatten(): line1, = ax.plot(np.random.random(100), label='data1') line2, = ax.plot(np.random.random(100), label='data2') line3, = ax.plot(np.random.random(100), 'o', label='data3') fig.subplots_adjust(top=0.9, left=0.1, right=0.9, bottom=0.12) # create some space below the plots by increasing the bottom-value axlist.flatten()[-2].legend(loc='upper center', bbox_to_anchor=(0.5, -0.12), ncol=3) # it would of course be better with a nicer handle to the middle-bottom axis object, but since I know it is the second last one in my 3 x 3 grid... fig.show() 

Теперь будет метка ниже второй второй (нижней средней) оси, благодаря bbox_to_anchor=(x, y) с отрицательным значением y. В зависимости от того, сколько у вас разных подзаговоров и сколько разных линий вы планируете в каждом подзаголовке, лучше было бы правильно отслеживать разные объекты линии. Возможно, добавьте их в список.

Для меня это выглядит так:

введите описание изображения здесь

Означает ли это, что вы хотите, чтобы вы искали?

  • Как построить 2 подзаголовка из разных функций в одном окне (рисунок)?
  • Matplotlib: подзаголовок
  • как удалить «пустое» пространство между подзаголовками?
  • Делать более длинные метки подзаголовка в matplotlib?
  • Python: subplot внутри цикла: первая панель отображается в неправильном положении
  •  
    Interesting Posts for Van-Lav

    Создавать канонический «родительский» продукт в Django Oscar программно

    Python Преобразование температуры MVC: почему я получаю «TypeError: buttonPressed () отсутствует 1 обязательный позиционный аргумент:« self »

    Почему RabbitMQ не сохраняет сообщения в надежной очереди?

    Разделить строку запятыми, но игнорировать запятые в двойных кавычках?

    pandas merge dataframe заполняет отсутствующие значения

    Использование BeautifulSoup для выбора блоков div в HTML

    Как хранить словарь python в mysql DB через python

    Преобразование из CMYK в RGB с подушкой отличается от преобразования Photoshop

    Как я могу перемещать глобальные пакеты в виртуальную среду после создания виртуальной среды?

    Построение кривой кривой в базе данных Python

    Разделите один список другим списком

    Ошибка отображения статического содержимого

    url_for с _external = True на heroku не добавляет имя сервера в URL-адрес

    Как работают переопределенные вызовы методов из методов базового класса?

    Как получить имя сайта в шаблоне django-cms?

    Python - лучший язык программирования в мире.