智能小程序 Ray 开发——计量 API 接口汇总(一)

统计

接口依赖云能力,需在小程序开发者平台开发设置-云能力进行授权配置。📢注意:统计能力使用需要提交工单开通产品数据统计,请在使用前 提交快速工单

接口能力

对智能计量的能力我们提供了下接口能力,开发者可直接调用 API 完成计量相关业务开发。

注意,以下 API 需要在 @ray-js/ray^1.2.12 使用。

接口名描述
getStatisticsConfig获取统计数据的配置信息
getStatisticsRang15min15min 为时间间隔,获取设备日期区间的统计数据
getStatisticsRangHour小时为时间间隔,获取设备日期区间的统计数据
exportStatisticsHour小时为时间间隔,导出设备日期区间的统计数据
getStatisticsRangDay天为时间间隔,获取设备日期区间的统计数据
exportStatisticsDay天为时间间隔,导出设备日期区间的统计数据
getStatisticsRangMonth月为时间间隔,获取导出设备日期区间的统计数据
exportStatisticsMonth月为时间间隔,导出设备在过去一个月内的统计数据
resetStatistics重置设备的统计数据

👉 立即免费领取开发资源,体验涂鸦 MiniApp 小程序开发。

 

图表组件

安装

npm install @ray-js/stat-charts

组件 Props

名称类型必填默认值描述
styleReact.CSSPropertiesN图表容器的样式
devIdListstring[]Y设备 id 列表, (暂不支持多个)
dpListDp[]Ydp 功能点列表, 图表的数据维度, 格式 { name: string, id:number }
rangestringY数据合集, 时间单位内为一个点, 例如: 15min, 1hour, 1day, 1month
typestringNsum统计类型, 例如: avg, max, min, sum, count
unitstringY数据单位, 例如: ℃, %, m
startDatestringY数据开始时间, 格式: YYYYMMDD, 例如: 202305 20230522
endDatestringO''数据结束时间, 数据合集为 1day 1month 需提供, 格式为 YYYYMMDD
renderTitle({ data }) => React.ReactNodeN''自定义图表标题
renderFooter({ data }) => React.ReactNodeN''自定义图表尾部
themestringNlight主题, 'light' / 'dark'
dataZoomnumberN0显示数据轴的百分比 1~100 -100~-1 之间, 默认为左侧, 负数表示显示数据的右侧
chartTypestringNline图表类型, line / bar / line-area
widthnumberN654图表宽度, 单位为 rpx
heightnumberN422图表高度, 单位为 rpx
placeholder{ loading: string; error: string; none: string }N{ loading: 'Loading...', error: 'Failed To Load', none: 'No data for this period…' }图表中央的占位文案,,根据 placeholderIcon 的状态来显示
placeholderIconstringNloading空数据时的占位图标, 可选值: loading, error, none
placeholderYAxisnumberN10空数据时 Y 轴的最大值, 0 则不展示 Y 轴
placeholderXAxisstring[]N['6:00', '12:00', '18:00']空数据时 X 轴的标签, [] 则不展示 X 轴
debugbooleanNfalse是否开启调试模式,开启后会生成随机数据,请勿在生产模式使用

 

使用示例

展示全年气温统计
import StatCharts from '@ray-js/stat-charts';
 
<Charts
  devIdList={['vdevo168473759041567']} // 设备 id
  dpList={[{ id: 27, name: '温度' }]} // 功能点 id 及 名称
  unit="℃" // 数据单位
  range="1month" // 以每个月为一个点
  type="avg" // 统计类型, 统计该月的平均值
  startDate="202301" // 数据开始时间 1月开始
  endDate="202312" // 数据结束时间 12月结束
  count={25} // 副标题上的数据
  chartType={'line'} // 折线图
/>;
统计设备能耗数据
<Charts
  devIdList={['vdevo168473759041567']}
  dpList={[
    { id: 27, name: '温控器' },
    { id: 28, name: '氛围灯' },
  ]}
  unit="kwH" // 单位 千瓦时
  range="15min" // 每 15 分钟为一个点
  startDate="20230522" // 统计当天的数据
  dataZoom={-30} // 可缩放滑动 默认展示数据的右侧 30%
  chartType="bar" // 柱状图
/>

关于图表类需求的统计接口中的type参数的解释

统计类型

下面的时间间隔目前写的都是1小时,可以换成支持的1天1个月

sum

类型描述示例 把 1小时 内上报的数据,进行 累加 操作,得到这个小时数据的 总和

minux

类型描述示例 取 1小时 内上报的数据的最大值,减去 上个小时 上报的数据的最大,得到 这个小时 的使用数据。

  • Tip: 如果 上个小时 没有数据,再之前的上报的最大数据相减,得到 这个小时 的使用数据。
  • Tip: 这个类型本应该是 minus, 因为一开始(三年前)的单词拼错了,所以现在就一直用 minux了。
avg

把 1小时 内上报的数据,进行 累加 操作,并除以上报的 次数,得到这个 小时 数据的 平均

min

统计 1小时 内上报的数据的最小值。

max

统计 1小时 内上报的数据的最大值。

count

统计 1小时 内上报的数据的次数。

#recently

统计离 整点时间 最近的那个点。

统计间隔

按小时统计

简单说就是根据 统计类型 统计一个小时内上报的数据,然后聚合成一个点

按天获取

简单说就是根据 统计类型 统计一天内上报的数据,然后聚合成一个点

按月统计

简单说就是根据 统计类型 统计月内上报的数据,然后聚合成一个点

👉 立即免费领取开发资源,体验涂鸦 MiniApp 小程序开发。  

  • 21
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

IoT砖家涂拉拉

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值