는이 같은 MATLAB 다른 셀룰러 기지국의 범위를 플롯하려고 :어떻게 MATLAB에서 이와 같은 플롯을 만들 수 있습니까?
그러나 나는 그것을 수행하는 방법을 알아낼 수 없습니다.
는이 같은 MATLAB 다른 셀룰러 기지국의 범위를 플롯하려고 :어떻게 MATLAB에서 이와 같은 플롯을 만들 수 있습니까?
그러나 나는 그것을 수행하는 방법을 알아낼 수 없습니다.
세포 농도 (X, Y)의 행렬입니다 그 주위에 (주어진 반지름으로) 원 다각형을 만들고이 다각형을 그리드로 변환하십시오. 그런 다음이 그리드 (행렬)를 서로 위에 요약합니다. 속도면에서 폴리곤을 사용하는 대신 스테이션의 5 행 또는 열 내의 모든 셀이 값을 얻는 것처럼 스테이션에서 처리 할 셀을 정의 할 수도 있습니다. 스테이션에 포함 된 셀의 값이 1 인 매트릭스에 2D 가우스 필터를 적용 할 수도 있습니다. 가우스 커널의 대역폭은 범위 범위입니다. http://www.mathworks.ch/help/toolbox/images/ref/fspecial.html
다음과 같은 그림을 만드는 방법의 예입니다. 나는 무작위로 uniformly distributed pseudorandom numbers 사용하는 셀룰러 기지국의 위치를 생성하여 플롯에 대한 샘플 데이터를 생성합니다 :
%# Initializations:
minRange = 0; %# Lower x and y range
maxRange = 3.5; %# Upper x and y range
resolution = 1000; %# The number of data points on the x and y axes
cellRange = linspace(minRange, maxRange, resolution);
[x, y] = meshgrid(cellRange); %# Create grids of x and y coordinates
cellCoverage = zeros(size(x)); %# Initialize the image matrix to zero
%# Create the sample image data:
numBases = 200;
cellRadius = 0.75;
for iBase = 1:numBases
point = rand(1,2).*(maxRange - minRange) + minRange;
index = ((x - point(1)).^2 + (y - point(2)).^2) <= cellRadius^2;
cellCoverage(index) = cellCoverage(index) + 1;
end
%# Create the plot:
imagesc(cellRange, cellRange, cellCoverage); %# Scaled plot of image data
axis equal; %# Make tick marks on each axis equal
set(gca, 'XLim', [minRange maxRange], ... %# Set the x axis limit
'YLim', [minRange maxRange], ... %# Set the y axis limit
'YDir', 'normal'); %# Flip the y axis direction
xlabel('X-distance (km)'); %# Add an x axis label
ylabel('Y-distance (km)'); %# Add a y axis label
colormap(jet); %# Set the colormap
colorbar; %# Display the color bar
을 그리고 여기에 결과 플롯이다 : 또한
참고는의 데이터 이미지 행렬 cellCoverage
에는 노이즈가없고 스무딩이 적용되지 않아 게시물의 원본 이미지보다 가장자리가 더 선명하게 보입니다 (나는 의 데이터 인 "hake"샘플 데이터가 아닌 h 오히려).
입력 내용은 무엇입니까? – yuk