跳转至

ui_chart

ui_chart 模块提供图表组件,包含图表数据序列与柱状图、折线图等可视化类型。

Class Summary

OHOS::UIChartDataSerial

管理图表数据序列,提供数据点的添加、修改、删除及样式配置功能

OHOS::UIChartDataSerial::PointStyle

定义折线图中最前端、最高、最低数据点的样式

  • 构造:无
  • 成员函数:无

  • 使用包含头文件#include "components/ui_chart.h"

  • 声明头文件middleware/services/gui/uikit/ui/interfaces/kits/components/ui_chart.h
  • 公有运算符:无
  • 继承关系:HeapBase
  • 嵌套类型:无
  • 模板形参:无

OHOS::UIChart

图表基类,提供数据序列的添加、删除及坐标轴管理功能

  • 构造UIChart()
  • 成员函数

    接口名称 功能简述
    GetViewType 获取视图类型
    SetHeight 设置图表高度
    SetWidth 设置图表宽度
    OnPreDraw 绘制前处理
    OnDraw 绘制图表
    AddDataSerial 添加数据序列
    DeleteDataSerial 删除数据序列
    ClearDataSerial 清除所有数据序列
    RefreshChart 刷新图表并重绘脏区域
    GetXAxis 获取 X 轴实例
    GetYAxis 获取 Y 轴实例
    EnableReverse 设置是否启用图表反转
  • 使用包含头文件#include "components/ui_chart.h"

  • 声明头文件middleware/services/gui/uikit/ui/interfaces/kits/components/ui_chart.h
  • 公有运算符:无
  • 继承关系:UIViewGroup
  • 嵌套类型:无
  • 模板形参:无

OHOS::UIChartPillar

柱状图类,提供柱状图的数据刷新和渐变配置功能

  • 构造UIChartPillar()
  • 成员函数

    接口名称 功能简述
    RefreshChart 刷新柱状图并重绘脏区域
    SetGradient 设置柱状图渐变效果
    ClearGradient 清除渐变效果
  • 使用包含头文件#include "components/ui_chart.h"

  • 声明头文件middleware/services/gui/uikit/ui/interfaces/kits/components/ui_chart.h
  • 公有运算符:无
  • 继承关系:UIChart
  • 嵌套类型:无
  • 模板形参:无

OHOS::UIChartPolyline

折线图类,提供折线图的数据刷新和渐变透明度配置功能

  • 构造UIChartPolyline()
  • 成员函数

    接口名称 功能简述
    RefreshChart 刷新折线图并重绘脏区域
    SetGradientOpacity 设置填充颜色渐变透明度范围
    SetGradientBottom 设置填充区域底边距 X 轴的距离
  • 使用包含头文件#include "components/ui_chart.h"

  • 声明头文件middleware/services/gui/uikit/ui/interfaces/kits/components/ui_chart.h
  • 公有运算符:无
  • 继承关系:UIChart
  • 嵌套类型:无
  • 模板形参:无

Functions

OHOS::UIChartDataSerial

UIChartDataSerial

UIChartDataSerial()

功能说明

  • 构造 UIChartDataSerial 对象,初始化数据序列的默认状态
  • 构造后需调用 SetMaxDataCount 设置最大数据点数,再进行数据操作
  • 对象构造后数据点数组为空,数据计数为 0

SetMaxDataCount

bool SetMaxDataCount(uint16_t maxCount)

功能说明

  • 设置数据序列可存储的最大数据点数量
  • 必须在添加、删除、修改数据之前调用,否则数据操作将失败
  • 默认最大数据点数为 0

入参

名称 参数类型 详细说明 约束取值范围
maxCount uint16_t 可存储的最大数据点数 0 ~ 512

返回值

  • 返回类型:bool

返回操作结果

返回值 触发场景
true 设置成功
false 设置失败

ModifyPoint

bool ModifyPoint(uint16_t index, const Point& point)

功能说明

  • 修改指定索引处数据点的值
  • 修改后数据序列的最高点和最低点信息会自动更新
  • 需在 SetMaxDataCount 之后调用

入参

名称 参数类型 详细说明 约束取值范围
index uint16_t 待修改数据点的索引 0 ~ maxCount - 1
point const Point& 新的数据点值,入参只读引用,不修改所指对象 -

返回值

  • 返回类型:bool

返回操作结果

返回值 触发场景
true 修改成功
false 修改失败

GetPoint

bool GetPoint(uint16_t index, Point& point)

功能说明

  • 获取指定索引处数据点在图表中的坐标
  • 若数据序列已绑定到图表,返回图表坐标;若未绑定,返回原始值
  • 出参 point 中写入获取到的坐标值

入参

名称 参数类型 详细说明 约束取值范围
index uint16_t 待获取数据点的索引 0 ~ dataCount - 1
point Point& 出参引用,写入获取到的坐标值 -

出参

名称 数据类型 输出说明
point Point& 数据点在图表中的坐标,出参引用,由被调用方写入

返回值

  • 返回类型:bool

返回操作结果

返回值 触发场景
true 获取成功
false 获取失败

GetOriginalPoint

bool GetOriginalPoint(uint16_t index, Point& point)

功能说明

  • 获取指定索引处数据点的原始坐标值
  • 返回用户添加的原始数据,非图表像素坐标
  • 出参 point 中写入原始坐标值

入参

名称 参数类型 详细说明 约束取值范围
index uint16_t 待获取数据点的索引 0 ~ dataCount - 1
point Point& 出参引用,写入原始坐标值 -

出参

名称 数据类型 输出说明
point Point& 数据点的原始坐标,出参引用,由被调用方写入

返回值

  • 返回类型:bool

返回操作结果

返回值 触发场景
true 获取成功
false 获取失败

PointArrayDup

bool PointArrayDup(Point** pointArrayBack)

功能说明

  • 备份数据点数组,创建数据点数组的副本
  • 调用者需负责释放返回的备份数组内存
  • 用于在修改数据前保存当前数据快照

入参

名称 参数类型 详细说明 约束取值范围
pointArrayBack Point** 出参指针,返回数据点数组副本的地址 非 nullptr

出参

名称 数据类型 输出说明
pointArrayBack Point** 数据点数组副本的地址,出参指针,由被调用方写入

返回值

  • 返回类型:bool

返回操作结果

返回值 触发场景
true 备份成功
false 备份失败

AddPoints

bool AddPoints(const Point* data, uint16_t count)

功能说明

  • 向数据序列末尾添加数据点
  • 新数据点追加到最后添加的数据之后
  • 达到最大数据点数后无法继续添加

入参

名称 参数类型 详细说明 约束取值范围
data const Point* 待添加数据点的起始地址指针,入参只读指针,不修改所指对象 非 nullptr,指向有效内存
count uint16_t 待添加的数据点数量 1 ~ maxCount - dataCount

返回值

  • 返回类型:bool

返回操作结果

返回值 触发场景
true 添加成功
false 添加失败

ClearData

void ClearData()

功能说明

  • 清除数据序列中的所有数据点
  • 调用后数据计数归零,可重新添加数据
  • 不影响最大数据点数设置

GetDataCount

uint16_t GetDataCount() const

功能说明

  • 获取当前数据序列中可用的数据点数量
  • 该函数为 const 函数,不修改对象状态
  • 返回值为当前实际存储的数据点数

返回值

  • 返回类型:uint16_t

返回数据点数量

返回值 触发场景
0 无数据点
1 ~ maxCount 当前存储的数据点数

EnableSmooth

void EnableSmooth(bool smooth)

功能说明

  • 设置是否对折线进行平滑处理,仅适用于折线图
  • 启用平滑后部分数据会被丢弃,折线不会经过所有数据点
  • 启用平滑时不建议同时使用填充颜色、最高点和最低点功能

入参

名称 参数类型 详细说明 约束取值范围
smooth bool 是否启用平滑,true 表示启用,false 表示不启用 true / false

IsSmooth

bool IsSmooth() const

功能说明

  • 查询折线是否启用了平滑处理
  • 该函数为 const 函数,不修改对象状态
  • 默认值为 false

返回值

  • 返回类型:bool

返回平滑状态

返回值 触发场景
true 已启用平滑
false 未启用平滑

EnableGradient

void EnableGradient(bool enable)

功能说明

  • 设置是否启用折线图填充颜色,仅适用于折线图
  • 默认填充折线与 X 轴之间的区域,可通过 SetGradientBottom 修改填充区域
  • 默认值为 false

入参

名称 参数类型 详细说明 约束取值范围
enable bool 是否启用填充颜色,true 表示启用,false 表示不启用 true / false

IsGradient

bool IsGradient() const

功能说明

  • 查询折线图是否启用了填充颜色
  • 该函数为 const 函数,不修改对象状态
  • 默认值为 false

返回值

  • 返回类型:bool

返回填充颜色启用状态

返回值 触发场景
true 已启用填充颜色
false 未启用填充颜色

GetPeakIndex

uint16_t GetPeakIndex() const

功能说明

  • 获取数据序列中最高点(Y 值最大)的索引
  • 若存在多个最高点,返回第一个最高点的索引
  • 该函数为 const 函数,不修改对象状态

返回值

  • 返回类型:uint16_t

返回最高点索引

GetLatestIndex

uint16_t GetLatestIndex() const

功能说明

  • 获取最新添加或修改的数据点索引
  • 该函数为 const 函数,不修改对象状态
  • 返回最后一次添加或修改操作对应的数据点索引

返回值

  • 返回类型:uint16_t

返回最新数据点索引

GetValleyIndex

uint16_t GetValleyIndex() const

功能说明

  • 获取数据序列中最低点(Y 值最小)的索引
  • 若存在多个最低点,返回第一个最低点的索引
  • 该函数为 const 函数,不修改对象状态

返回值

  • 返回类型:uint16_t

返回最低点索引

GetPeakData

int16_t GetPeakData() const

功能说明

  • 获取数据序列中最高点的 Y 值
  • 返回值为用户添加的原始数据值,非像素坐标
  • 该函数为 const 函数,不修改对象状态

返回值

  • 返回类型:int16_t

返回最高点的 Y 值

GetValleyData

int16_t GetValleyData() const

功能说明

  • 获取数据序列中最低点的 Y 值
  • 返回值为用户添加的原始数据值,非像素坐标
  • 该函数为 const 函数,不修改对象状态

返回值

  • 返回类型:int16_t

返回最低点的 Y 值

SetLastPointIndex

void SetLastPointIndex(uint16_t value)

功能说明

  • 设置最后一个数据点的索引值
  • 用于指定数据序列的最后一个有效数据点位置
  • 调用后影响 GetLastPointIndex 的返回值

入参

名称 参数类型 详细说明 约束取值范围
value uint16_t 最后一个数据点的索引 0 ~ maxCount - 1

GetLastPointIndex

uint16_t GetLastPointIndex() const

功能说明

  • 获取最后一个数据点的索引值
  • 该函数为 const 函数,不修改对象状态
  • 返回通过 SetLastPointIndex 设置的值

返回值

  • 返回类型:uint16_t

返回最后一个数据点索引

GetLineColor

ColorType GetLineColor() const

功能说明

  • 获取折线图中数据序列的折线颜色
  • 该函数为 const 函数,不修改对象状态
  • 返回的颜色类型为 ColorType

返回值

  • 返回类型:ColorType

返回折线颜色

GetFillColor

ColorType GetFillColor() const

功能说明

  • 获取数据序列的填充颜色
  • 折线图中为折线与 X 轴之间的填充色,柱状图中为柱体颜色
  • 该函数为 const 函数,不修改对象状态

返回值

  • 返回类型:ColorType

返回填充颜色

SetFillColor

void SetFillColor(const ColorType& color)

功能说明

  • 设置数据序列的填充颜色
  • 折线图中为折线与 X 轴之间的填充色,柱状图中为柱体颜色
  • 入参为只读引用,不修改所指对象

入参

名称 参数类型 详细说明 约束取值范围
color const ColorType& 待设置的填充颜色,入参只读引用,不修改所指对象 有效的 ColorType 值

SetLineColor

void SetLineColor(const ColorType& color)

功能说明

  • 设置折线图中数据序列的折线颜色,仅适用于折线图
  • 入参为只读引用,不修改所指对象
  • 设置后需刷新图表才能看到颜色变化

入参

名称 参数类型 详细说明 约束取值范围
color const ColorType& 待设置的折线颜色,入参只读引用,不修改所指对象 有效的 ColorType 值

BindToChart

void BindToChart(UIChart* chart)

功能说明

  • 将数据序列绑定到指定的图表对象
  • 绑定后数据点坐标将根据图表坐标轴进行转换
  • 入参指针由调用方管理,被调用方不接管所有权

入参

名称 参数类型 详细说明 约束取值范围
chart UIChart* 待绑定的图表指针,入参指针,不接管所有权 非 nullptr

HidePoint

void HidePoint(uint16_t index, uint16_t count)

功能说明

  • 隐藏数据序列中从指定索引开始的连续数据点,仅适用于折线图
  • 隐藏后数据点之间的连线不显示
  • 不建议与最高点、最低点显示功能同时启用,因最高最低点可能出现在隐藏区域

入参

名称 参数类型 详细说明 约束取值范围
index uint16_t 隐藏起始索引 0 ~ dataCount - 1
count uint16_t 隐藏的数据点数量 1 ~ dataCount - index

GetHideIndex

uint16_t GetHideIndex() const

功能说明

  • 获取数据序列中隐藏起始索引
  • 该函数为 const 函数,不修改对象状态
  • 返回 HidePoint 设置的隐藏起始索引

返回值

  • 返回类型:uint16_t

返回隐藏起始索引

GetHideCount

uint16_t GetHideCount() const

功能说明

  • 获取数据序列中隐藏的数据点数量
  • 该函数为 const 函数,不修改对象状态
  • 返回 HidePoint 设置的隐藏数量

返回值

  • 返回类型:uint16_t

返回隐藏数据点数量

SetHeadPointStyle

void SetHeadPointStyle(const PointStyle& style)

功能说明

  • 设置折线图中最前端数据点的样式
  • 入参为只读引用,不修改所指对象
  • 设置后需刷新图表才能看到样式变化

入参

名称 参数类型 详细说明 约束取值范围
style const PointStyle& 待设置的数据点样式,入参只读引用,不修改所指对象 有效的 PointStyle 值

SetTopPointStyle

void SetTopPointStyle(const PointStyle& style)

功能说明

  • 设置折线图中最高数据点的样式
  • 入参为只读引用,不修改所指对象
  • 设置后需刷新图表才能看到样式变化

入参

名称 参数类型 详细说明 约束取值范围
style const PointStyle& 待设置的数据点样式,入参只读引用,不修改所指对象 有效的 PointStyle 值

SetBottomPointStyle

void SetBottomPointStyle(const PointStyle& style)

功能说明

  • 设置折线图中最低数据点的样式
  • 入参为只读引用,不修改所指对象
  • 设置后需刷新图表才能看到样式变化

入参

名称 参数类型 详细说明 约束取值范围
style const PointStyle& 待设置的数据点样式,入参只读引用,不修改所指对象 有效的 PointStyle 值

GetHeadPointStyle

const PointStyle& GetHeadPointStyle() const

功能说明

  • 获取折线图中最前端数据点的样式
  • 该函数为 const 函数,不修改对象状态
  • 返回值为只读引用

返回值

  • 返回类型:const PointStyle&

返回最前端数据点样式的只读引用

GetTopPointStyle

const PointStyle& GetTopPointStyle() const

功能说明

  • 获取折线图中最高数据点的样式
  • 该函数为 const 函数,不修改对象状态
  • 返回值为只读引用

返回值

  • 返回类型:const PointStyle&

返回最高数据点样式的只读引用

GetBottomPointStyle

const PointStyle& GetBottomPointStyle() const

功能说明

  • 获取折线图中最低数据点的样式
  • 该函数为 const 函数,不修改对象状态
  • 返回值为只读引用

返回值

  • 返回类型:const PointStyle&

返回最低数据点样式的只读引用

EnableHeadPoint

void EnableHeadPoint(bool enable)

功能说明

  • 设置是否绘制折线图中最前端的数据点
  • 最前端数据点为最新添加或修改的数据点
  • 默认值为 false

入参

名称 参数类型 详细说明 约束取值范围
enable bool 是否绘制最前端数据点,true 表示绘制,false 表示不绘制 true / false

GetEnableHeadPoint

bool GetEnableHeadPoint() const

功能说明

  • 查询是否启用了最前端数据点的绘制
  • 该函数为 const 函数,不修改对象状态
  • 返回 EnableHeadPoint 设置的值

返回值

  • 返回类型:bool

返回最前端数据点绘制启用状态

返回值 触发场景
true 已启用最前端数据点绘制
false 未启用最前端数据点绘制

EnableTopPoint

void EnableTopPoint(bool enable)

功能说明

  • 设置是否绘制折线图中的最高数据点
  • 若存在多个最高点,仅绘制第一个
  • 默认值为 false

入参

名称 参数类型 详细说明 约束取值范围
enable bool 是否绘制最高点,true 表示绘制,false 表示不绘制 true / false

GetEnableTopPoint

bool GetEnableTopPoint() const

功能说明

  • 查询是否启用了最高数据点的绘制
  • 该函数为 const 函数,不修改对象状态
  • 返回 EnableTopPoint 设置的值

返回值

  • 返回类型:bool

返回最高点绘制启用状态

返回值 触发场景
true 已启用最高点绘制
false 未启用最高点绘制

EnableBottomPoint

void EnableBottomPoint(bool enable)

功能说明

  • 设置是否绘制折线图中的最低数据点
  • 若存在多个最低点,仅绘制第一个
  • 默认值为 false

入参

名称 参数类型 详细说明 约束取值范围
enable bool 是否绘制最低点,true 表示绘制,false 表示不绘制 true / false

GetEnableBottomPoint

bool GetEnableBottomPoint() const

功能说明

  • 查询是否启用了最低数据点的绘制
  • 该函数为 const 函数,不修改对象状态
  • 返回 EnableBottomPoint 设置的值

返回值

  • 返回类型:bool

返回最低点绘制启用状态

返回值 触发场景
true 已启用最低点绘制
false 未启用最低点绘制

DrawPoint

void DrawPoint(BufferInfo& gfxDstBuffer, const Rect& mask)

功能说明

  • 绘制数据序列中的特殊数据点(最前端、最高、最低点)
  • 根据 EnableHeadPoint、EnableTopPoint、EnableBottomPoint 的设置决定绘制哪些点
  • 调用者需确保 gfxDstBuffer 和 mask 参数有效

入参

名称 参数类型 详细说明 约束取值范围
gfxDstBuffer BufferInfo& 图形目标缓冲区,入参引用 有效的 BufferInfo 对象
mask const Rect& 绘制遮罩区域,入参只读引用,不修改所指对象 有效的 Rect 对象

Refresh

void Refresh()

功能说明

  • 刷新数据序列,更新脏区域标记
  • 调用后触发图表的局部重绘
  • 用于数据修改后通知图表更新显示

OHOS::UIChartDataSerial::PointStyle

该嵌套类仅有公有数据成员,无公有成员函数,详情参见 Structures 章节。

OHOS::UIChart

UIChart

UIChart()

功能说明

  • 构造 UIChart 对象,初始化图表并添加 X 轴和 Y 轴子视图
  • 设置默认线宽为 1,背景色为黑色
  • 构造后需设置图表宽高和数据范围后才能正常显示

GetViewType

UIViewType GetViewType() const override

功能说明

  • 获取视图类型,返回 UI_CHART 类型标识
  • 该函数为 const 函数,不修改对象状态
  • 用于在视图系统中识别图表组件类型

返回值

  • 返回类型:UIViewType

返回视图类型

返回值 触发场景
UI_CHART 当前对象为图表组件

SetHeight

void SetHeight(int16_t height) override

功能说明

  • 设置图表组件的高度
  • 重写父类 UIViewGroup 的 SetHeight 方法
  • 设置后需刷新图表才能看到尺寸变化

入参

名称 参数类型 详细说明 约束取值范围
height int16_t 待设置的图表高度 大于 0

SetWidth

void SetWidth(int16_t width) override

功能说明

  • 设置图表组件的宽度
  • 重写父类 UIViewGroup 的 SetWidth 方法
  • 设置后需刷新图表才能看到尺寸变化

入参

名称 参数类型 详细说明 约束取值范围
width int16_t 待设置的图表宽度 大于 0

OnPreDraw

bool OnPreDraw(Rect& invalidatedArea) const override

功能说明

  • 图表绘制前处理,始终返回 false 表示不跳过绘制
  • 该函数为 const 函数,不修改对象状态
  • 重写父类的 OnPreDraw 方法

入参

名称 参数类型 详细说明 约束取值范围
invalidatedArea Rect& 无效区域,入参引用 有效的 Rect 对象

返回值

  • 返回类型:bool

返回是否跳过绘制

返回值 触发场景
false 不跳过绘制,继续执行 OnDraw

OnDraw

void OnDraw(BufferInfo& gfxDstBuffer, const Rect& invalidatedArea) override

功能说明

  • 执行图表绘制操作
  • 重写父类 UIViewGroup 的 OnDraw 方法
  • 由绘制框架在刷新时自动调用

入参

名称 参数类型 详细说明 约束取值范围
gfxDstBuffer BufferInfo& 图形目标缓冲区,入参引用 有效的 BufferInfo 对象
invalidatedArea const Rect& 无效区域,入参只读引用,不修改所指对象 有效的 Rect 对象

AddDataSerial

virtual bool AddDataSerial(UIChartDataSerial* dataSerial)

功能说明

  • 向图表添加数据序列
  • 添加后数据序列将与图表关联,坐标转换生效
  • 入参指针由调用方管理,被调用方不接管所有权

入参

名称 参数类型 详细说明 约束取值范围
dataSerial UIChartDataSerial* 待添加的数据序列指针,入参指针,不接管所有权 非 nullptr

返回值

  • 返回类型:bool

返回操作结果

返回值 触发场景
true 添加成功
false 添加失败

DeleteDataSerial

virtual bool DeleteDataSerial(UIChartDataSerial* dataSerial)

功能说明

  • 从图表中删除指定数据序列
  • 删除后数据序列与图表解除关联
  • 入参指针由调用方管理,被调用方不接管所有权

入参

名称 参数类型 详细说明 约束取值范围
dataSerial UIChartDataSerial* 待删除的数据序列指针,入参指针,不接管所有权 非 nullptr,且已通过 AddDataSerial 添加

返回值

  • 返回类型:bool

返回操作结果

返回值 触发场景
true 删除成功
false 删除失败

ClearDataSerial

virtual void ClearDataSerial()

功能说明

  • 清除图表中的所有数据序列
  • 调用后图表不再显示任何数据
  • 不影响坐标轴设置

RefreshChart

virtual void RefreshChart() = 0

功能说明

  • 刷新图表并重绘脏区域,仅重绘需要更新的部分(如新增数据点)
  • 性能优于 Invalidate 全量重绘
  • 该函数为纯虚函数,由子类实现具体的刷新逻辑

GetXAxis

UIXAxis& GetXAxis()

功能说明

  • 获取图表的 X 轴实例引用
  • 返回引用可用于设置 X 轴的数据范围和刻度数
  • 返回的引用指向图表内部持有的 X 轴对象

返回值

  • 返回类型:UIXAxis&

返回 X 轴实例引用

GetYAxis

UIYAxis& GetYAxis()

功能说明

  • 获取图表的 Y 轴实例引用
  • 返回引用可用于设置 Y 轴的数据范围和刻度数
  • 返回的引用指向图表内部持有的 Y 轴对象

返回值

  • 返回类型:UIYAxis&

返回 Y 轴实例引用

EnableReverse

void EnableReverse(bool enable)

功能说明

  • 设置是否启用图表反转
  • 启用反转后 X 轴与图表顶部对齐,数据点像素位置不变,图表进行互补填充
  • 同步设置 X 轴和 Y 轴的反转状态
  • 默认值为 false

入参

名称 参数类型 详细说明 约束取值范围
enable bool 是否启用图表反转,true 表示启用,false 表示不启用 true / false

OHOS::UIChartPillar

UIChartPillar

UIChartPillar()

功能说明

  • 构造 UIChartPillar 柱状图对象
  • 构造后需通过 AddDataSerial 添加数据序列
  • 需设置图表宽高和坐标轴数据范围后才能正常显示

RefreshChart

void RefreshChart() override

功能说明

  • 刷新柱状图并重绘脏区域,仅重绘需要更新的部分
  • 性能优于 Invalidate 全量重绘
  • 重写 UIChart 的纯虚函数,实现柱状图特有的刷新逻辑

SetGradient

bool SetGradient(const LinearGradient& linear, const ColorStop* stops, uint16_t stopCount)

功能说明

  • 设置柱状图的渐变效果
  • 通过线性渐变参数和颜色停靠点配置柱状图渐变
  • 入参 stops 指针由调用方管理,被调用方不接管所有权

入参

名称 参数类型 详细说明 约束取值范围
linear const LinearGradient& 线性渐变参数,入参只读引用,不修改所指对象 有效的 LinearGradient 值
stops const ColorStop* 颜色停靠点数组指针,入参只读指针,不修改所指对象 非 nullptr,指向有效数组
stopCount uint16_t 颜色停靠点数量 大于 0

返回值

  • 返回类型:bool

返回操作结果

返回值 触发场景
true 设置成功
false 设置失败

ClearGradient

void ClearGradient()

功能说明

  • 清除柱状图的渐变效果
  • 调用后柱状图恢复为纯色填充模式
  • 不影响数据序列的填充颜色设置

OHOS::UIChartPolyline

UIChartPolyline

UIChartPolyline()

功能说明

  • 构造 UIChartPolyline 折线图对象,初始化渐变透明度默认值
  • 默认最小透明度为 OPA_TRANSPARENT,最大透明度为 OPA_OPAQUE
  • 默认渐变底边距为 0
  • 构造后需通过 AddDataSerial 添加数据序列

RefreshChart

void RefreshChart() override

功能说明

  • 刷新折线图并重绘脏区域,仅重绘需要更新的部分
  • 性能优于 Invalidate 全量重绘
  • 重写 UIChart 的纯虚函数,实现折线图特有的刷新逻辑

SetGradientOpacity

void SetGradientOpacity(uint8_t minOpa, uint8_t maxOpa)

功能说明

  • 设置折线图填充颜色渐变的透明度范围
  • 透明度在最高点与最低点之间按比例计算
  • 调用后标记需要刷新

入参

名称 参数类型 详细说明 约束取值范围
minOpa uint8_t 最靠近 X 轴的透明度 0 (OPA_TRANSPARENT) ~ 255 (OPA_OPAQUE)
maxOpa uint8_t 最远离 X 轴的透明度 0 (OPA_TRANSPARENT) ~ 255 (OPA_OPAQUE)

SetGradientBottom

void SetGradientBottom(uint16_t bottom)

功能说明

  • 设置填充区域底边距 X 轴的距离
  • 填充折线与底边之间的区域,未反转图表中底边在折线上方时不填充
  • 反转图表中底边在折线下方时不填充

入参

名称 参数类型 详细说明 约束取值范围
bottom uint16_t 填充区域底边距 X 轴的距离,以像素为单位 0 ~ 图表高度

Structures

OHOS::UIChartDataSerial::PointStyle

struct PointStyle : public HeapBase {
    ColorType fillColor;
    ColorType strokeColor;
    uint16_t radius;
    uint16_t strokeWidth;
};

成员说明

成员名称 数据类型 描述
fillColor ColorType 填充颜色
strokeColor ColorType 边框颜色
radius uint16_t 内半径
strokeWidth uint16_t 边框宽度,从内半径向外扩展