Ես ցուցադրեցի զանգված matshow-ով և այն լավ է աշխատում, բայց հիմա ուզում եմ փորձել imshow-ն: Հարցն այն է, որ imshow-ի որակն իսկապես վատ է համեմատած Matshow-ի հետ:
Ինչպե՞ս կարող եմ սա շտկել:
Matshow.
matshow(array)
Imshow:
plt.imshow(array)
Ես ցուցադրեցի զանգված matshow-ով և այն լավ է աշխատում, բայց հիմա ուզում եմ փորձել imshow-ն: Հարցն այն է, որ imshow-ի որակն իսկապես վատ է համեմատած Matshow-ի հետ:
Ինչպե՞ս կարող եմ սա շտկել:
Matshow.
matshow(array)
Imshow:
plt.imshow(array)
Խնդիրը պայմանավորված է ինտերպոլացիայով:
Matplotlib matshow
փաթաթված է imshow
համար այն «սկիզբը սահմանում է «վերին», «ինտերպոլացիա»՝ «ամենամոտ» և «ասպեկտ»՝ հավասար»:
Այսպիսով, մինչ matshow-ը միշտ օգտագործում է interpolation="nearest"
, imshow
-ը լռելյայն ունի interpolation=None
: Նշենք, որ սա տարբերվում է interpolation="none"
-ից:
interpolation=None
-ն օգտագործում է image.interpolation
փոփոխականում սահմանված ինտերպոլացիան matplotlib rc ֆայլից (որը կարող է տարբեր լինել տարբեր matplotlib տարբերակները։)interpolation="none"
-ը չի օգտագործում ինտերպոլացիա, ինչպես "nearest"
Այս խնդիրը հաղթահարելու ամենաանվտանգ միջոցը երկու զանգերում էլ հատուկ ինտերպոլացիայի մեթոդ սահմանելն է
plt.matshow(array, interpolation="none")
plt.imshow(array, interpolation="none")
"none"
-ի և"nearest"
-ի միջև: 15.03.2020