Matplotlib - Как нарисовать трехмерную плоскость - PullRequest
0 голосов
/ 06 декабря 2018

Я хочу нарисовать 3D-плоскую диаграмму, используя matplotlib .Я не понимаю, почему я получаю сообщение об ошибке, указывающее, что x и y должны иметь одинаковую длину.

В [134]: dat_vis

Out[134]: 

   param_C param_gamma  mean_test_score           x  y
4        1       0.001         0.875129           0  1
5        1      0.0001         0.844759           0  0
6       10       0.001         0.903091  0.00900901  1
7       10      0.0001         0.875191  0.00900901  0
8      100       0.001         0.899622   0.0990991  1
9      100      0.0001         0.902420   0.0990991  0
10    1000       0.001         0.909187           1  1
11    1000      0.0001         0.896094           1  0

В [135]: ax.plot_trisurf (dat_vis.x, dat_vis.y, dat_vis.mean_test_score)

---------------------------------------------------------------------------
ValueError                                Traceback (most recent call last)
<ipython-input-135-1693be3ae757> in <module>()
----> 1 ax.plot_trisurf(dat_vis.x, dat_vis.y, dat_vis.mean_test_score)

~/anaconda3/lib/python3.6/site-packages/mpl_toolkits/mplot3d/axes3d.py in plot_trisurf(self, *args, **kwargs)
   1976         lightsource = kwargs.pop('lightsource', None)
   1977 
-> 1978         tri, args, kwargs = Triangulation.get_from_args_and_kwargs(*args, **kwargs)
   1979         if 'Z' in kwargs:
   1980             z = np.asarray(kwargs.pop('Z'))

~/anaconda3/lib/python3.6/site-packages/matplotlib/tri/triangulation.py in get_from_args_and_kwargs(*args, **kwargs)
    162             mask = kwargs.pop('mask', None)
    163 
--> 164             triangulation = Triangulation(x, y, triangles, mask)
    165         return triangulation, args, kwargs
    166 

~/anaconda3/lib/python3.6/site-packages/matplotlib/tri/triangulation.py in __init__(self, x, y, triangles, mask)
     53             # No triangulation specified, so use matplotlib._qhull to obtain
     54             # Delaunay triangulation.
---> 55             self.triangles, self._neighbors = _qhull.delaunay(x, y)
     56             self.is_delaunay = True
     57         else:

ValueError: x and y must be 1D arrays of the same length

1 Ответ

0 голосов
/ 06 декабря 2018

Я получаю объект Dataframe из sklearn.model_selection.GridSearchCV ().он возвращает объект dtypes столбцы, поэтому, когда я пытаюсь использовать дисперсию для рисования грага, он не может работать должным образом.поэтому, если вы не можете найти, где вопрос, вы должны вернуться и убедиться, что у вас есть правильный dtypes.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...