#python
#python
Вопрос:
Мой код в основном таков: я пытаюсь построить и визуализировать линейную регрессию между mpg, смещением и мощностью в 3D-графике с использованием matplotlib
fig = plt.figure(figsize=(25,15))
ax = fig.gca(projection='3d')
ax.plot_trisurf(auto['mpg'],auto['displacement'],auto['horsepower'], cmap = cm.jet)
ошибка возвращается как:
NameError Traceback (most recent call last)
<ipython-input-208-0a4e9c165dee> in <module>
1 fig = plt.figure(figsize=(25,15))
2 ax = fig.gca(projection='3d')
----> 3 ax.plot_trisurf(auto['mpg'],auto['displacement'],auto['horsepower'], cmap = cm.jet)
NameError: name 'cm' is not defined
Комментарии:
1. Вы импортировали
cm
?from matplotlib import cm
Ответ №1:
Если вы измените значение cm.jet
на 'jet'
, оно, вероятно, будет работать и использовать «струйную» цветовую карту matplotlib (вы можете увидеть все разные цветовые карты здесь)
То, что вы пытаетесь сделать, это использовать библиотеку matplotlib.cm однако, чтобы использовать это, вам сначала нужно импортировать библиотеку через import matplotlib.cm as cm
Таким образом, вы используете переменную _jet_data, определенную в cm, однако это довольно громоздко. Я всегда просто использую строковую ссылку на цветовую карту, потому что тогда нет необходимости импортировать cm-файл, поэтому я рекомендую вам сделать то же самое!