Шаг 172.
Язык Python. Визуализация данных. Библиотека Mayavi. Визуализация данных. Функции для работы с двумерными наборами данных. Функция contour_surf()

    На этом шаге мы рассмотрим назначение и примеры использования этой функции.

    Функция contour_surf() похожа на рассмотренную ранее surf(), в отличие от неё она строит не поверхность, а контурные линии для каждого уровня высоты из переданного 2D-массива данных. Варианты вызова функции:

  contour_surf(s, ...) 
  contour_surf(x, y, s, ...) 
  contour_surf(x, y, f, ...)

    Параметры x, y, s, f являются позиционными, по назначению совпадают с аналогичными для surf(). Функция contour_surf() поддерживает параметры из общего набора (см. 162 шаг) и в дополнение к ним:

warp_scale
Масштаб по оси z, в отличии от функции surf() не поддерживает значение 'auto'.

contours
Список контуров для отображения.

    Будем работать с уже знакомым набором данных:

x, y = np.mgrid[-2:2:0.1, -2:2:0.1]
z = 5 * np.cos(x * y) * np.sin(x * y)

    Построим контурную поверхность:

mlab.contour_surf(x, y, z) 

mlab.show()

    Приведем полный текст приложения:

import numpy as np
from mayavi import mlab

x, y = np.mgrid[-2:2:0.1, -2:2:0.1]
z = 5 * np.cos(x * y) * np.sin(x * y)

mlab.contour_surf(x, y, z)

mlab.show()
Архив с файлом можно взять здесь.


Рис.1. Демонстрация работы функции contour_surf()

    Увеличим количество отображаемых контуров с помощью параметра contours, поменяем палитру и зададим масштаб для оси z:

import numpy as np
from mayavi import mlab

x, y = np.mgrid[-2:2:0.1, -2:2:0.1]
z = 5 * np.cos(x * y) * np.sin(x * y)

mlab.contour_surf(z, colormap='autumn', contours=11, warp_scale=10)

mlab.show()
Архив с файлом можно взять здесь.


Рис.2. Демонстрация работы с параметрами contours, colormap и warp_scale функции contour_surf()

    На следующем шаге мы рассмотрим функцию mesh().




Предыдущий шаг Содержание Следующий шаг