matplotlib에서 흐릿한 점을 표시하려면 다음 단계를 수행할 수 있습니다. -
-
Figure 크기를 설정하고 서브플롯 사이와 주변의 패딩을 조정합니다.
-
새 그림을 만들거나 기존 새 그림을 활성화하십시오.
-
ax1 추가 하위 플롯 배열의 일부로 그림에.
-
먼저 마커를 흐리게 만들 수 있습니다.
-
X 및 Y 축 스케일을 설정하고 축을 끕니다.
-
파일에 마커를 저장하고 해당 이미지를 로드하여 흐리게 처리한 후 플로팅합니다.
-
이전 그림인 fig1을 닫습니다. .
-
새 그림을 만들거나 기존 그림을 활성화합니다(fig2). .
-
임의의 데이터 포인트 x 및 y를 생성합니다.
-
가우시안 필터를 적용하여 흐리게 하려면 현재 축에 해당 아티스트를 추가하세요.
-
ax2에서 X 및 Y축 배율을 설정합니다. .
-
그림을 표시하려면 show()를 사용하세요. 방법.
예시
import matplotlib.pyplot as plt from scipy import ndimage from matplotlib.image import BboxImage from matplotlib.transforms import Bbox, TransformedBbox import numpy as np plt.rcParams["figure.figsize"] = [7.50, 3.50] plt.rcParams["figure.autolayout"] = True fig1 = plt.figure() ax1 = fig1.add_subplot(111) ax1.plot(0.5, 0.5, 'd', ms=200) ax1.set_ylim(0, 1) ax1.set_xlim(0, 1) plt.axis('off') fig1.savefig('marker.png') marker = plt.imread('marker.png') plt.close(fig1) fig2 = plt.figure() ax2 = fig2.add_subplot(111) x = 8 * np.random.rand(10) + 1 y = 8 * np.random.rand(10) + 1 sigma = np.arange(10, 60, 5) for xi, yi, sigmai in zip(x, y, sigma): markerBlur = ndimage.gaussian_filter(marker, sigmai) bb = Bbox.from_bounds(xi, yi, 1, 1) bb2 = TransformedBbox(bb, ax2.transData) bbox_image = BboxImage(bb2,norm=None,origin=None, clip_on=False) bbox_image.set_data(markerBlur) ax2.add_artist(bbox_image) ax2.set_xlim(0, 10) ax2.set_ylim(0, 10) plt.show()
출력