Разное

Матлаб hold on: Наложение графиков друг на друга MatLab

Наложение графиков друг на друга MatLab

Урок 6. Обычная графика MATLAB
Построение графиков отрезками прямых
Графики в логарифмическом масштабе
Графики в полулогарифмическом масштабе
Столбцовые диаграммы
Построение гистограмм
Лестничные графики — команды stairs
Графики с зонами погрешности
График дискретных отсчетов функции
Графики в полярной системе координат
Угловые гистограммы
Графики векторов
График проекций векторов на плоскость
Контурные графики
Создание массивов данных для трехмерной графики
Графики поля градиентов quiver
Построение графиков поверхностей
Сетчатые 3D-графики с окраской
Сетчатые 3D-графики с проекциями
Построение поверхности столбцами
Построение поверхности с окраской
Построение поверхности и ее проекции
Построение освещенной поверхности
Средства управления подсветкой и обзором фигур
Построение графиков функций трех переменных
График трехмерной слоеной поверхности
Трехмерные контурные графики

Установка титульной надписи
Установка осевых надписей
Ввод текста в любое место графика
Позиционирование текста с помощью мыши
Вывод пояснений
Маркировка линий уровня на контурных графиках
Управление свойствами осей графиков
Включение и выключение сетки
Наложение графиков друг на друга
Разбиение графического окна
Изменение масштаба графика
Установка палитры цветов
Установка соответствия между палитрой цветов и масштабом осей
Окраска поверхностей
Установка палитры псевдоцветов
Создание закрашенного многоугольника
Окраска плоских многоугольников
Вывод шкалы цветов
Цветные плоские круговые диаграммы
Другие команды управления световыми эффектами
Окрашенные многоугольники в пространстве
Цветные объемные круговые диаграммы
Построение цилиндра
Построение сферы
Трехмерная графика с треугольными плоскостями
Что нового мы узнали?

Во многих случаях желательно построение многих наложенных друг на друга графиков в одном и том же окне.

Для этого служит команда продолжения графических построений hold. Она используется в следующих формах:

hold on — обеспечивает продолжение вывода графиков в текущее окно, что позволяет добавлять последующие графики к уже существующим;

hold off — отменяет режим продолжения графических построений; 

hold — работает как переключатель, последовательно включая режим продолжения графических построений и отменяя его.

Команда hold on устанавливает значение add для свойства NextPlot объектов figure и axes, a hold off устанавливает для этого свойства значение replace. Рекомендуется также ознакомиться с командами ishold, newplot, figure и axes.

Рис. 6.41. Графики синусоиды и трех параметрических функций в одном окне

Приведенный ниже пример показывает, как с помощью команды hold on на график синусоиды накладываются еще три графика параметрически заданных функций:

& raquo; х—5:0.1:5; 

» plot(x,sin(x))

» hold on

» plot(sin(x),cos(x))

» plot(2*sin(x),cos(x))

» plot(4*sin(x),cos(x)) 

» hold off

Графики построенных функций показаны на рис. 6.42.

В конце приведенного фрагмента программы команда hold off отключает режим добавления графиков к ранее построенным графикам.

 

Нравится

Твитнуть

numpy — альтернатива Matlab для Python

Задавать вопрос

спросил

Изменено 1 год, 7 месяцев назад

Просмотрено 1к раз

У меня есть несколько наборов данных с именем group, и я хочу отобразить их на пустой фигуре. Я имею в виду, когда новый набор данных считывается компьютером, моя программа добавит его к рисунку. 92)+1) затем поверните массив с помощью np.rot90() power_ch2 = np.rot90(np.array(np.log10(((np.add(np.square(np.abs(i_data[:, ::2])) , np.square(np.abs(q_data[: , ::2]))))*10)+1)*10 , dtype=float64)) print(«Группа: «, группы) рис, топор = plt.subplots() ax.set_xlim(0, 475*200) ax.

set_ylim (0, 3000) TX, TY = мой_список[i] ax.imshow (power_ch2, ​​cmap = ‘viridis’, интерполяция = ‘ближайший’, аспект = ‘авто’, степень = (tx, tx+200, ty, ty+2700)) я +=1 plt.tight_layout() plt.show()

Я использую этот код, но не могу удерживать старые графики. Я хочу добавить новый набор данных рядом со старым. Как мне это сделать? Я использовал для удержания с Matlab, но не смог найти альтернативу для Python.

  • Python
  • Numpy
  • MATPLOTLIB
  • График
  • IMSHOW

Вы можете сделать это, используя MATLAB , вместо стиля (который у вас использует стиль (который у вас использует стиль (который у вас использует. .subplots() ), как показано в следующем примере: 9', метка='грех(х)') plt.legend() plt.xlabel('x') plt.ylabel('y(x)') plt.show()

Output

Дополнительную информацию о возможностях построения графиков matplotlib можно найти в этой замечательной книге.

Ура

0

Зарегистрируйтесь или войдите

Зарегистрироваться через Google

Зарегистрироваться через Facebook

Зарегистрируйтесь, используя электронную почту и пароль

Опубликовать как гость

Электронная почта

Требуется, но никогда не отображается

Опубликовать как гость

Электронная почта

Требуется, но не отображается

Построить несколько графиков в Matplotlib

Улучшить статью

Сохранить статью

  • Уровень сложности: Средний
  • Последнее обновление: 03 Янв, 2021

  • Читать
  • Обсудить
  • Улучшить статью

    Сохранить статью

    Предварительные условия : Matplotlib

    В Matplotlib мы можем рисовать несколько графиков на одном графике двумя способами. Один из них — использование функции subplot(), а другой — наложение второго графика на первый, т. е. все графики будут отображаться на одном графике. Мы рассмотрим оба способа один за другим.

    Несколько графиков с использованием функции subplot()

    Функция subplot() — это функция-оболочка, которая позволяет программисту построить более одного графика на одном рисунке, просто вызвав ее один раз.

    Синтаксис: matplotlib.pyplot.subplots(nrows=1, ncols=1, sharex=False, sharey=False, сжатие=True, subplot_kw=None, gridspec_kw=None, **fig_kw)

    Параметр

    1. nrows, ncols: Это количество строк и столбцов соответственно. Также следует отметить, что оба эти параметра являются необязательными и значение по умолчанию равно 1.
    2. sharex, sharey:  Эти параметры указывают свойства, общие для осей a и y. Возможные значения для них: row, col, none или значение по умолчанию False.
    3. сжатие:  Этот параметр представляет собой указанное логическое значение, которое спрашивает программиста, нужно ли сжимать, то есть удалять дополнительное измерение из массива. Имеет значение по умолчанию False.
    4. subplot_kw: Эти параметры позволяют нам добавлять ключевые слова к каждому подзаголовку, и его значение по умолчанию — None.
    5. gridspec_kw: Это позволяет нам добавлять сетки на каждый подграфик и имеет значение по умолчанию None.
    6. **fig_kw: Это позволяет нам передать любой другой дополнительный аргумент ключевого слова в вызов функции и имеет значение по умолчанию None.

    Example :

    Python3

    import matplotlib.pyplot as plt

    import numpy as np

    import math

       

    X = np. arange( 0 , math.pi * 2 , 0.05 )

       

    Y1 = np.sin(X)

    Y2 = np.cos(X)

    Y3 = np.tan(X)

    Y4 = np.tanh(X)

       

    figure, axis = plt.subplots( 2 , 2 )

     

    axis[ 0 , 0 ]. plot(X, Y1)

    axis[ 0 , 0 ].set_title( "Sine Функция" )

    Ось [ 0 , 1 ] .plot (x, Y2)

    . set_title ( "Функция косинуса" )

    Ось [ 1 , 0 ] , 0 ] .set_title ( «Тангаентная функция» )

    AXIS [ 1 , 18 . Ось [ 1 , 1 ] .Set_title ( "ТАНГ ФУНКЦИЯ" )

    .SHOW.SHOW.SH)

    .0003

    Несколько графиков с использованием функции subplot()

    В Matplotlib есть еще одна функция, очень похожая на subplot — subplot2grid(). Это почти то же самое, что и функция подзаголовка, но обеспечивает большую гибкость для размещения объектов графика в соответствии с потребностями программиста.

    Эта функция записывается следующим образом:

    Синтаксис: matplotlib.pyplot.subplot2grid(shape, loc, rowspan=1, colspan=1, fig=None, **kwargs)

    Параметр:

    1. shape
      Этот параметр представляет собой последовательность двух целочисленных значений, которая указывает форму сетки, для которой нам нужно разместить оси. Первая запись предназначена для строки, а вторая — для столбца.
    2. loc
      Подобно параметру формы, даже Ioc представляет собой последовательность из двух целых значений, где первая запись остается для строки, а вторая — для столбца, чтобы поместить ось в сетку.
    3. rowspan
      Этот параметр принимает целочисленное значение и число, указывающее количество строк, на которые ось должна простираться или увеличиваться вправо.
    4. colspan
      Этот параметр принимает целочисленное значение и число, которое указывает количество столбцов для охвата оси или увеличения длины вниз.
    5. рис.
      Это необязательный параметр, который использует фигуру для размещения оси. По умолчанию используется текущая фигура.
    6. **kwargs
      Это позволяет нам передать любой другой дополнительный аргумент ключевого слова в вызов функции и имеет значение по умолчанию None.

    Example :

    Python3

    import matplotlib. pyplot as plt

    import numpy as np

    import math

       

    plot1 = plt.subplot2grid(( 3 , 3 ), ( 0 , 0 ), colspan = 2 )

    plot2 = plt.subplot2grid(( 3 , 3 ), ( 0 , 2 ), rowspan = 3 , colspan = 2 )

    plot3 = plt. subplot2grid(( 3 , 3 ), ( 1 , 0 ), rowspan = 2 )

       

    x = np.arange( 1 , 10 )

    Участок2.plot (x, x * * 0,5 )

    PLOTE20017    

    plot1.plot(x, np.exp(x))

    plot1.set_title( 'Exponent' )

       

    plot3. plot(x, x * x)

    Участок. Set_title ( 'Square' )

    PLT.Tight_layout ()

    .

    Выход

    Несколько графиков с использованием функции subplot2grid()

    Построение на одном графике

    Теперь мы узнали о построении нескольких графиков с использованием функций subplot и subplot2grid библиотеки Matplotlib. Как упоминалось ранее, теперь мы рассмотрим построение нескольких кривых путем их наложения. В этом методе мы не используем никаких специальных функций, вместо этого мы напрямую строим кривые одну над другой и пытаемся установить масштаб.

    Пример:

    Python3

    import matplotlib. pyplot as plt

    import numpy as np

    import math

       

    X = np.arange ( 0 , math.pi * 2 , 0.05 )

       

    y = np.sin(X)

    z = np.cos(X)

       

    plt.plot(X, y, color = 'r' , label = 'sin' )

    plt.

    Добавить комментарий

    Ваш адрес email не будет опубликован. Обязательные поля помечены *