Wolfram 언어

이미지 처리 및 신호 처리

시카고와 유럽 수도들의 날씨 비교

유럽 연합의 수도 중 작년 1년 동안 시카고의 기온과 가장 비슷한 기온을 기록한 도시를 구합니다. WarpingDistance를 사용하여 기온 배열 사이의 유사성을 파악합니다.

In[1]:=
Click for copyable input
chicagoTemp = WeatherData["Chicago", "Temperature", {{2015, 7}, {2016, 6}, "Week"}, "Value"];

유럽 연합 모든 수도의 기온을 얻습니다.

In[2]:=
Click for copyable input
capitals = CityData /@ CountryData["EU", "CapitalCity"] // Sort
Out[2]=
In[3]:=
Click for copyable input
capitalsTemp = WeatherData[#, "Temperature", {{2015, 7}, {2016, 6}, "Week"}, "Value"] -> # & /@ capitals;

시카고의 기온과 가장 비슷한 기온을 기록한 수도를 구합니다.

In[4]:=
Click for copyable input
Nearest[capitalsTemp, chicagoTemp, DistanceFunction -> (QuantityMagnitude@WarpingDistance[##] &)]
Out[4]=

짝을 이룬 두 수도의 거리를 행렬로 계산합니다.

In[5]:=
Click for copyable input
dm = DistanceMatrix[Keys@capitalsTemp, DistanceFunction -> (QuantityMagnitude@WarpingDistance[##] &)];

거리 행렬의 7×7의 부분 행렬을 표시합니다.

In[6]:=
Click for copyable input
MatrixForm[Take[dm, 7, 7]]
Out[6]//MatrixForm=

앞서 계산된 거리 행렬을 사용하여 기온의 유사성을 시각화합니다.

전체 Wolfram 언어 입력 표시하기
In[7]:=
Click for copyable input
MatrixPlot[dm, FrameTicks -> {{Transpose[{Range[Length@capitals], capitals}], None}, {Transpose[{Range[Length@capitals], Rotate[#, \[Pi]/2] & /@ capitals}], None}}, Mesh -> True, ColorFunction -> "BlueGreenYellow", PlotLegends -> Placed[Automatic, Above], PlotLabel -> "Distance based on temperature", ImageSize -> Large]
Out[7]=

관련 예제

de en es fr ja pt-br ru zh