2016-09-24 4 views
1

Я использую Julia 0.5 и последнюю версию PyPlot. Я печатаю 2D-массив, используя plot.pcolor, и он работает очень хорошо. Но теперь у меня есть данные, которые нуждаются в логарифмическом масштабировании. Я искал в Интернете, и то, что я нашел пример использованияЛогарифмическое масштабирование/цветная панель в Julia с использованием PyPlot (matplotlib)

plt.pcolor(X, Y, Z1, norm=LogNorm(vmin=Z1.min(), vmax=Z1.max()), cmap='PuBu_r')

Но поскольку LogNorm кажется функция питона IST не работает в Джулию. Кто-нибудь есть идея, что я могу передать norm=, чтобы получить логарифмическое масштабирование?

Примером может быть:

using PyPlot 
A = rand(20,20) 
figure() 
PyPlot.pcolor(A, cmap="PuBu_r") 
colorbar() 
+0

Если это не реализовано в pyplot julia, вы должны реализовать его самостоятельно. Это довольно простая функция для порта. [См. Здесь] (https://github.com/matplotlib/matplotlib/blob/84d979b9b55d5165630aa4e7d5ca1b30fb52e420/lib/matplotlib/colors.py). – sascha

ответ

2

Matplotlib поля и методы могут быть доступны с помощью синтаксиса

matplotlib[:colors][:LogNorm] 

(то есть для соответствующего объекта matplotlib.colors.LogNorm).

ОБНОВЛЕНИЕ: Благодарим вас за ваше мнение. Основываясь на этом примере, мне удалось заставить его работать следующим образом:

PyPlot.pcolor(A, norm=matplotlib[:colors][:LogNorm](vmin=minimum(A), vmax=maximum(A)), cmap="PuBu_r") 
+0

Хорошо, я добавил пример. – ChristianM

+0

Большое спасибо. Я обновил свой ответ. Кроме того, на всякий случай вы могли бы подумать, что я отказываюсь отвечать, пока вы не представили тривиальный пример (что-то в моей кишке говорит мне, что может быть так, хе-хе, может быть, я ошибаюсь!), Вы можете подумать, что это был тривиальный пример, но на самом деле я не использую PyPlot так много, поэтому было полезно иметь что-то, с чем можно было бы играть, что гарантировало, что и работа будет, и будет соответствовать тому, что вы искали. Так что спасибо за то, что вы обновили свой вопрос. –

+0

также, просто указывая на 'minimum' и' maximum' - эквивалентные методы julia для нахождения минимума и максимума коллекции. (функции 'min' и' max' julia также существуют, но они делают что-то немного другое). –

Смежные вопросы