ValueError: значения RGBA должны находиться в диапазоне 0–1 при построении точечной диаграммы.Python

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 ValueError: значения RGBA должны находиться в диапазоне 0–1 при построении точечной диаграммы.

Сообщение Anonymous »

Я пытаюсь создать точечную диаграмму, чтобы показать данные до и после преобразования PCA, аналогично этому руководству.
Для этого я запускаю следующий код: р>

Код: Выделить всё

fig, axes = plt.subplots(1,2)
axes[0].scatter(X.iloc[:,0], X.iloc[:,1], c=y)
axes[0].set_xlabel('x1')
axes[0].set_ylabel('x2')
axes[0].set_title('Before PCA')
axes[1].scatter(X_new[:,0], X_new[:,1], c=y)
axes[1].set_xlabel('PC1')
axes[1].set_ylabel('PC2')
axes[1].set_title('After PCA')
plt.show()
Что вызывает появление этой ошибки:

Код: Выделить всё

ValueError: RGBA values should be within 0-1 range
X — это предварительно обработанная матрица признаков, содержащая 196 образцов и 59 признаков. Тогда как y является зависимой переменной и содержит два класса [0, 1].
Вот полное сообщение об ошибке:

Код: Выделить всё

---------------------------------------------------------------------------
ValueError                                Traceback (most recent call last)
 in 
1 fig, axes = plt.subplots(1,2)
----> 2 axes[0].scatter(X.iloc[:,0], X.iloc[:,1], c=y)
3 axes[0].set_xlabel('x1')
4 axes[0].set_ylabel('x2')
5 axes[0].set_title('Before PCA')

~/anaconda3/lib/python3.7/site-packages/matplotlib/__init__.py in inner(ax, data, *args, **kwargs)
1597     def inner(ax, *args, data=None, **kwargs):
1598         if data is None:
-> 1599             return func(ax, *map(sanitize_sequence, args), **kwargs)
1600
1601         bound = new_sig.bind(ax, *args, **kwargs)

~/anaconda3/lib/python3.7/site-packages/matplotlib/axes/_axes.py in scatter(self, x, y, s, c, marker, cmap, norm, vmin, vmax, alpha, linewidths, verts, edgecolors, plotnonfinite, **kwargs)
4495                 offsets=offsets,
4496                 transOffset=kwargs.pop('transform', self.transData),
-> 4497                 alpha=alpha
4498                 )
4499         collection.set_transform(mtransforms.IdentityTransform())

~/anaconda3/lib/python3.7/site-packages/matplotlib/collections.py in __init__(self, paths, sizes, **kwargs)
881         """
882
--> 883         Collection.__init__(self, **kwargs)
884         self.set_paths(paths)
885         self.set_sizes(sizes)

~/anaconda3/lib/python3.7/site-packages/matplotlib/collections.py in __init__(self, edgecolors, facecolors, linewidths, linestyles, capstyle, joinstyle, antialiaseds, offsets, transOffset, norm, cmap, pickradius, hatch, urls, offset_position, zorder, **kwargs)
125
126         self._hatch_color = mcolors.to_rgba(mpl.rcParams['hatch.color'])
--> 127         self.set_facecolor(facecolors)
128         self.set_edgecolor(edgecolors)
129         self.set_linewidth(linewidths)

~/anaconda3/lib/python3.7/site-packages/matplotlib/collections.py in set_facecolor(self, c)
676         """
677         self._original_facecolor = c
--> 678         self._set_facecolor(c)
679
680     def get_facecolor(self):

~/anaconda3/lib/python3.7/site-packages/matplotlib/collections.py in _set_facecolor(self, c)
659         except AttributeError:
660             pass
--> 661         self._facecolors = mcolors.to_rgba_array(c, self._alpha)
662         self.stale = True
663

~/anaconda3/lib/python3.7/site-packages/matplotlib/colors.py in to_rgba_array(c, alpha)
277             result[mask] = 0
278         if np.any((result < 0) | (result > 1)):
--> 279             raise ValueError("RGBA values should be within 0-1 range")
280         return result
281     # Handle single values.

ValueError: RGBA values should be within 0-1 range
Я не уверен, что вызывает эту ошибку, и был бы признателен за помощь в выяснении этого. Спасибо!

Подробнее здесь: https://stackoverflow.com/questions/714 ... atter-plot
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Python»