Skip to content

PowerBI

数据设置

设置API

Get data -> Blank Query

打开一个空白的Query进行编辑

alt text

点击Advanced Editor

alt text

输入以下示例Query

let
    // API 地址
    apiUrl = "https://www.weincloud.net/dashboard/api/v2/open_api/history",

    // 获取当前 UTC 时间
    endDate = DateTimeZone.UtcNow(),

    // 当前时间往前推 3 小时
    startDate = endDate - #duration(0, 3, 0, 0),

    // 转换为 ISO8601 格式
    formattedStartDate = DateTimeZone.ToText(startDate, "yyyy-MM-ddTHH:mm:ssZ"),
    formattedEndDate = DateTimeZone.ToText(endDate, "yyyy-MM-ddTHH:mm:ssZ"),
    
    // JSON 请求体
    requestBody = Json.FromValue([
        start = formattedStartDate,
        end = formattedEndDate,
        tags = {
            [
                hw_key = "请在此输入您的 HWKEY !!!",
                name = "请在此输入您的 Tag 名称 !!!"
            ]
        }
    ]),

    // HTTP 请求头
    requestHeaders = [
        #"Content-Type" = "application/json",
        #"X-API-KEY" = "请在此输入您的 API KEY !!!"
    ],

    // 发送 POST 请求
    Source = Web.Contents(
        apiUrl,
        [
            Headers = requestHeaders,
            Content = requestBody,
            Timeout = #duration(0, 0, 5, 0)
        ]
    ),

    // 解析 JSON 响应
    raw = Json.Document(Source),
    dList = raw[d],

    // 展开数组
    dTable = Table.FromList(dList, Splitter.SplitByNothing(), null, null, ExtraValues.Error),
    dExpanded = Table.ExpandRecordColumn(dTable, "Column1", {"hw_key", "name", "values"}),
    valuesExpanded = Table.ExpandListColumn(dExpanded, "values"),
    valuesFlattened = Table.ExpandRecordColumn(valuesExpanded, "values", {"value", "hmi_time"}),

    // 将 value 转换为数字类型
    #"Changed Type" = Table.TransformColumnTypes(valuesFlattened, {{"value", type number}}),

    // 将 hmi_time 转换为日期时间类型
    withDateTime = Table.AddColumn(
        #"Changed Type",
        "hmi_datetime",
        each DateTime.From(#datetime(1970, 1, 1, 0, 0, 0) + #duration(0, 0, 0, [hmi_time] / 1000)),
        type datetime
    )
in
    withDateTime

编辑凭据

alt text

选择API网址为
全球服务区: https://www.weincloud.net/dashboard/api/v2/open_api/history
中国服务区: https://www.weincloud.net.cn/dashboard/api/v2/open_api/history

alt text

关闭并保存

alt text

创建图表

选择LineChart

alt text

hmi_datetime放入X轴

alt text

选择直接使用原始数据作为依据

alt text

value放入Y轴
并选择您想要的整合方式

alt text

图表制作完成

alt text