диаграмма рассеяния pylab представляется транспонированной
Я играю с различными методами интерполяции – и особенно люблю разновидности, показанные в видео на YouTube. Https://www.youtube.com/watch?v=_cJLVhdj0j4
Однако модуль рассеяния отображает точки в неправильном месте. Я перенес их ниже (пример 5), чтобы заставить его работать, но это не работает, если интересующая область не сосредоточена на происхождении (Test_Rbf).
Я неправильно понимаю что-то фундаментальное, или это проблема в модуле рассеяния pylab?
# Example 5 # # https://www.youtube.com/watch?v=_cJLVhdj0j4 import numpy as np from scipy import interpolate import pylab as py def func(x,y): return (x+y)*np.cos(-5.0*x + 4.0*y) x = np.random.uniform(-1.0, 1.0,size=50) y = np.random.uniform(-1.0, 1.0,size=50) fvals = func(x,y) newfunc = interpolate.Rbf(x, y, fvals, function='multiquadric') xnew, ynew = np.mgrid[-1:1:100j, -1:1:100j] fnew = newfunc(xnew, ynew) true = func(xnew, ynew) py.figure() py.clf() py.imshow( fnew, extent=[-1,1,-1,1], cmap=py.cm.jet) # py.scatter( x, y, 30, fvals, cmap=py.cm.jet) py.scatter( y, -x, 30, fvals, cmap=py.cm.jet) py.show() from enthought.mayavi import mlab mlab.clf() mlab.surf(xnew, ynew, fnew*2)
- matplotlib рассеивает цветовые коды при наличии NaN
- PIP: установка только зависимостей
- Установка распределения pareto с (python) Scipy
- Как добавить вторую легенду для подгрупп в matplotlib chartplot
- Пип: указание второстепенной версии
Если вы используете
ynew, xnew = np.mgrid[-1:1:100j, -2:2:100j]
вместо
xnew, ynew = np.mgrid[-1:1:100j, -2:2:100j]
то xnew
будет меняться при перемещении по столбцам, а ynew
будет меняться по мере перемещения по строкам. (Я изменил x-диапазон от [-1,1] до [-2,2], чтобы было ясно, какие цифры контролируют диапазон).
Объедините это с предложением @ hitzg, чтобы добавить origin='lower'
в вызов imshow
, и вы получите:
import numpy as np from scipy import interpolate import matplotlib.pyplot as plt np.random.seed(2015) def func(x,y): return (x+y)*np.cos(-5.0*x + 4.0*y) x = np.random.uniform(-2.0, 2.0, size=50) y = np.random.uniform(-1.0, 1.0, size=50) fvals = func(x,y) newfunc = interpolate.Rbf(x, y, fvals, function='multiquadric') ynew, xnew = np.mgrid[-1:1:100j, -2:2:100j] fnew = newfunc(xnew, ynew) plt.figure() plt.imshow(fnew, extent=[-2,2,-1,1], cmap=plt.cm.jet, origin='lower') plt.scatter(x, y, s=30, c=fvals, cmap=plt.cm.jet) plt.show()
- Проблема с петлей в scrapy + selenium + phantomjs
- PyQt: сопоставление QDataWidgetMapper для настраиваемого свойства
- Что означает «ошибка: опция – единая версия – внешняя управляемая не распознана»?
- Делает ли pip handle extras_requires из setuptools / распределяет источники на основе?
- когда использовать альтернативный дистрибутив Python?
- Ускорение графиков разброса матплотлиба
- Как настройки, дистрибутивы и пипсы связаны друг с другом?
- Установка Pyramid и распространение на Mac
- Цвет на графе рассеяния Python Matplotlib
- matplotlib цвет расцветки как функция третьей переменной
- Миграция из дистрибутива в setuptools