from pylab import *
from scipy.ndimage import measurements
L = 100
pv = [0.2,0.3,0.4,0.5,0.6,0.7]
z = rand(L,L)
for i in range(len(pv)):
p = pv[i]
m = z<p
lw, num = measurements.label(m)
area = measurements.sum(m, lw, index=arange(lw.max() + 1))
areaImg = area[lw]
subplot(2,3,i+1)
tit = 'p='+str(p)
imshow(areaImg, origin='lower')
title(tit)
axis()
Я пытаюсь запустить этот код в vscode, но он показывает это на терминале
Предупреждение об устаревании: импортируйте label
из пространства имен scipy.ndimage
; пространство имен scipy.ndimage.measurements
устарело и будет удалено в SciPy 2.0.0.
lw, num = измерения.метка(м)
Предупреждение об устаревании: импортируйте sum
из пространства имен scipy.ndimage
; пространство имен scipy.ndimage.measurements
устарело и будет удалено в SciPy 2.0.0.
площадь = измерения.сумма(м, lw, индекс=arange(lw.max() + 1))
Я на самом деле новичок и не знаю, как импортировать метку и сумму.
Во второй строке вместо from scipy.ndimage import measurements
вы можете импортировать label
и sum
с помощью
from scipy.ndimage import label, sum
Затем вам нужно удалить measurements
из остальной части вашего кода, например:
lw, num = label(m) # works when you import label
area = sum(m, lw, index=arange(lw.max() + 1)) # works when you import sum
Судя по сообщению об ошибке, вы можете исправить это, изменив импорт на
from scipy.ndimage import label, sum_labels
. Вам также потребуется изменитьmeasurements.label()
->label()
иmeasurements.sum()
->sum_labels()
везде, где ваш код использует эти функции.