可视化季节性规律
比较一个中西部地点和一个西南部地点的季节性降水.
WeatherData 提供了以厘米为单位的综合降水量.
In[1]:=
start = {1999, 1, 1};
end = {2015, 12, 31};
In[2]:=
getData[place_] :=
WeatherData[place, "TotalPrecipitation", {start, end, "Month"}]
创建伊利诺伊州香槟市和亚利桑那州凤凰城的 TimeSeries. 指定 MissingDataMethod 用插值方法来填补遗漏的数据.
In[3]:=
makeTS[place_] :=
TimeSeries[getData[place], MissingDataMethod -> "Interpolation"]
In[4]:=
tsIL = makeTS[
Entity["City", {"Champaign", "Illinois", "UnitedStates"}]]
Out[4]=
In[5]:=
tsAZ = makeTS[Entity["City", {"Phoenix", "Arizona", "UnitedStates"}]]
Out[5]=
以降水量为权重创建 WeightedData,并通过在总年数上对数据作平均来绘制 DateHistogram.
In[6]:=
dataIL = WeightedData[tsIL["Dates"], tsIL["Values"]];
dataAZ = WeightedData[tsAZ["Dates"], tsAZ["Values"]];
In[7]:=
totalyears = (end[[1]] - start[[1]] + 1);
In[8]:=
avg := Function[{x, y}, y/totalyears]
In[9]:=
makeHistogram[data_, lab_] :=
DateHistogram[data, "Month", avg, DateReduction -> "Year",
PlotRange -> {All, {-1, 9}}, AxesLabel -> "cm", PlotLabel -> lab]
In[10]:=
{makeHistogram[dataIL, "IL"], makeHistogram[dataAZ, "AZ"]}
Out[10]=