Прозрачная цветовая карта

Я хотел бы получить график распределения плотности, подобный этому http://www.nicolacarlon.it/out.png с альфа-каналом вместо синего, как здесь http://www.nicolacarlon.it/out2.png

Я нашел этот код, но он не работает :(

    theCM = cm.get_cmap()
    theCM._init()
    alphas = np.abs(np.linspace(-1.0, 1.0, theCM.N))
    theCM._lut[:-3,-1] = alphas
    plt.imshow(img, cmap=theCM)
    plt.savefig("out.svg", transparent=True)

person EnneKappa    schedule 20.12.2011    source источник
comment
что производит «out.svg»? что с этим не так?   -  person Yann    schedule 20.12.2011
comment
Создайте первое изображение.   -  person EnneKappa    schedule 21.12.2011
comment
Если я напишу theCM=cm.get_cmap('hvs'), я получу изображение с обычной цветовой картой hvs :(   -  person EnneKappa    schedule 21.12.2011
comment
0.99.3-1ubuntu1 (с apt-get python-matplotlib)   -  person EnneKappa    schedule 21.12.2011
comment
если я прокомментирую строки 3 и 4 моего кода, я получу тот же результат...   -  person EnneKappa    schedule 21.12.2011


Ответы (1)


Это ошибка класса Colormap в matplotlib. Он существует в версиях matplotlib 0.99.x, но исправлен в версии 1.x. См. исправление ошибки, чтобы узнать, как это было исправлено. Обновите до последней версии, и эта проблема должна быть исправлена. Обходного пути для этой ошибки нет, поэтому обновление — единственный вариант.

person Yann    schedule 20.12.2011