《Power BI调用和风天气预报数据》介绍了获取天气预报数据的方法,本文介绍Power BI获取历史天气数据,并且具体到小时。
首先需要有地区列表以及对应的LocationID,LocationID可以在以下网址下载,将ID列表导入Power BI。
https://github.com/qwd/LocationList
接着访问和风官网申请Web API Key:
https://dev.qweather.com/
这个API支持过去10天的小时天气查询。现在的问题是,怎么在Power BI中自动按照今天推算过去10天?
在Power Query后台新建列,输入以下M公式:
这个公式中,DateTime.Date(DateTime.LocalNow())用来计算今天,因数据不含今天,从昨天开始,所以Date.AddDays倒退一天。List.Dates生成以昨天为开始,间隔为-1的10个日期。
展开list后即可得到地理和日期的笛卡尔积。
因和风API对日期格式的需求是"20240612"这种格式,因此再次新建列,得到:
再再次新建列,调用天气API:
展开Record后得到需要的结果。
如果你用表格展示天气数据,和风还提供了精美的SVG天气图标,可以放在条件格式使用。图标非常细致,相同天气白天和黑夜图标也是不一样的。
文末知识星球提供本文配套文件
这个图标库是开源免费的,我把它移植到了Power BI SVG系列在线工具中,左上角选择图标来源为和风天气,大家可以看到400+全部天气图标,并且可以在线修改配色,用于你的报表。