Я хочу построить последовательность из трех цветовых карт в трехмерном пространстве так, чтобы линия пересекала все плоскости цветовых карт, как показано на рисунке ниже.
https:// i.sstatic.net/65yOib6B.png
Для этого я использую mpl.plot_surface для создания плоскостей и LinearSegmentedColormap для создания цветовой карты, которая переходит от прозрачного к определенному цвету.< /p>
Однако, когда я рисую фигуру, на моем графике появляется серая сетка. Как я могу удалить его? В идеале синий оттенок должен проявляться на полностью прозрачной плоскости, но можно использовать и более светлый цвет.
Вот код, который я использовал для создания графика:
import matplotlib.pyplot as plt
import numpy as np
from matplotlib.colors import LinearSegmentedColormap
# Testing Data
sigma = 1.0
mu = np.linspace(0,2, 10)
x = np.linspace(-5, 5, 100)
y = np.linspace(-5, 5, 100)
X, Y = np.meshgrid(x, y)
Z = []
for m in mu:
Z.append(np.exp(-((X - m)**2 + (Y - m)**2) / (2 * sigma**2)))
fig = plt.figure()
ax = fig.add_subplot(111, projection='3d')
for i in [0, 5, -1]:
cmap = LinearSegmentedColormap.from_list('custom_blue', [(1, 1, 1, 0), (0, 0, 1, 1)])
wmap = cmap(Z/Z.max())
ax.plot_surface(mu * np.ones(X.shape), X, Y,facecolors=wmap, alpha=1, antialiased=True, edgecolor='none')
loc_max_x = []
loc_max_y = []
for i in range(len(mu)):
loc_x = np.where(Z == Z.max())[0][0]
loc_y = np.where(Z == Z.max())[1][0]
loc_max_x.append(loc_x)
loc_max_y.append(loc_y)
ax.plot(mu, x[loc_max_x], y[loc_max_y], color='r')
ax.set_box_aspect((3.4, 1, 1))
plt.savefig('3dplot.png', dpi=300)
plt.show()
Подробнее здесь: https://stackoverflow.com/questions/790 ... matplotlib
Постройте частично прозрачную плоскость в matplotlib ⇐ Python
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
Как спроецировать контурную карту на плоскость xy с помощью matplotlib?
Anonymous » » в форуме Python - 0 Ответы
- 27 Просмотры
-
Последнее сообщение Anonymous
-
-
-
Постройте гистограмму с помощью matplotlib, используя разные категории
Anonymous » » в форуме Python - 0 Ответы
- 24 Просмотры
-
Последнее сообщение Anonymous
-