Совместное использование атрибутов контурного графика между вспомогательными участками - PullRequest
2 голосов
/ 29 октября 2009

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

Контурные участки с цветными полосами http://www.inf.utfsm.cl/~rbonvall/colorbar-and-contour-plots.png

Я пытался вручную установить различные комбинации атрибутов cmap, colorbar и axes для каждого экземпляра подплота, но безуспешно. Как я могу разделить атрибуты контурного графика между всеми вспомогательными участками? Другими словами, как получить одинаковую цветовую панель для всех участков?

1 Ответ

2 голосов
/ 29 октября 2009

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

alt text

import numpy as np
import matplotlib.pyplot as plt

x = np.arange(-1.2, 1.2, .025)
y = np.arange(-1.2, 1.2, .025)
X, Y = np.meshgrid(x, y)
Z = np.cos(X)*np.cos(Y)
Z = Z*Z

plt.subplot(1,2,1)
CS = plt.contour(X, Y, Z)   # set levels automatically
plt.clabel(CS, inline=1, fontsize=10)
plt.subplot(1,2,2)
CS = plt.contour(X, Y, Z-.1, CS.levels)  # set levels as previous levels
plt.clabel(CS, inline=1, fontsize=10)
plt.show()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...