APLpy показывают маркеры, нормализованные по цветовой палитре

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

Итак, что я делаю, я читаю координаты маркера и соответствующие значения из текстового файла (position.dat):

ra = np.genfromtxt('positions.dat', dtype=float, comments='%', delimiter=';', missing_values='_', skip_header=1, usecols = (0)) dec = np.genfromtxt('positions.dat', dtype=float, comments='%', delimiter=';', missing_values='_', skip_header=1, usecols = (1)) magnitude = np.genfromtxt('positions.dat', dtype=float, comments='%', delimiter=';', missing_values='_', skip_header=1, usecols = (2)) 

Я определяю colormap и его нормализацию:

 cmap1 = mpl.cm.YlOrBr norm1 = mpl.colors.Normalize(10,20) 

Мои значения в файле position.dat находятся между 10 и 20 для проверки кода.

Я попытался построить маркеры следующим образом:

 fits1.show_markers(ra,dec, cmap=cmap1, norm=norm1, edgecolor=magnitude, facecolor='none', marker='x', s= 4, linewidths=0.8) 

Когда я это делаю, я всегда получаю ошибку:

 ValueError: Color array must be two-dimensional 

Файл position.dat выглядит так:

  ra ; dec ; magnitude 330.45 ; -31.958333 ; 10.0 330.46 ; -31.958333 ; 11.0 330.47 ; -31.958333 ; 12.0 330.48 ; -31.958333 ; 13.0 330.49 ; -31.958333 ; 14.0 330.50 ; -31.958333 ; 15.0 330.51 ; -31.958333 ; 16.0 330.52 ; -31.958333 ; 17.0 330.53 ; -31.958333 ; 18.0 330.54 ; -31.958333 ; 19.0 330.55 ; -31.958333 ; 20.0 

One Solution collect form web for “APLpy показывают маркеры, нормализованные по цветовой палитре”

Проблема в том, что разброс matplotlib не может принимать значения для edgecolor и facecolor , которые не являются цветными массивами (то есть массивами значений RGB). Правильный способ добиться того, что вы пытаетесь сделать, – использовать аргумент c сбрасывания, поэтому в этом случае:

 fits1.show_markers(ra,dec, cmap=cmap1, norm=norm1, c=magnitude, facecolor='none', marker='x', s=4, linewidths=0.8) 
  • Ошибка памяти при использовании pip install Matplotlib
  • Сделайте часть названия matplotlib полужирным шрифтом и другим цветом
  • Создание фильма из python без сохранения отдельных кадров в файлы
  • Управление динамическим построением в модуле анимации matplotlib
  • AttributeError: объект 'numpy.ndarray' не имеет атрибута 'append'
  • Создание графика с датой и временем в осях с меткой matplotlib
  • Диаграмма рассеяния Multiindex
  • создание контурных графиков для данных X, Y в python
  • Как построить цветную панель pcolor в другом подзаголовке - matplotlib
  • Как добавить легенду / метку в анимации python
  • интерактивный _standalone_ вывод от matplotlib
  • Python - лучший язык программирования в мире.