相关问题
DevEco Stduio如何绘制折线图
4266浏览 • 1回复 待解决
HarmonyOS 能否提供折线图的组件
290浏览 • 1回复 待解决
HarmonyOS 有没有自定义视图绘制的案例, 绘制渐变曲线?
179浏览 • 1回复 待解决
要动态显示一个曲线图,而且可以局部放大无失真,或失真最少,用chart好,还是用canvas好,还是用svg好?
2392浏览 • 1回复 待解决
自定义Component在绘制圆角矩形时,绘制后出现黑色阴影
10806浏览 • 2回复 待解决
HarmonyOS 自定义UI组件如何自定义属性方法
286浏览 • 1回复 待解决
HarmonyOS 自定义组件如何写自定义事件?
401浏览 • 1回复 待解决
HarmonyOS 自定义组件问题
272浏览 • 1回复 待解决
自定义组件嵌套子组件
9350浏览 • 3回复 待解决
自定义组件onMeasureSize的使用
284浏览 • 1回复 待解决
自定义组件如何导出、引入?
2218浏览 • 1回复 待解决
鸿蒙组件toast自定义样式
8675浏览 • 1回复 待解决
HarmonyOS ArkUI加载自定义组件
325浏览 • 1回复 待解决
鸿蒙绘制图形Path折线绘制Polyline设置折线拐角处为圆弧达不到效果,能不能增加圆角属性
1660浏览 • 1回复 待解决
如何自定义组件原型菜单
798浏览 • 1回复 待解决
如何自定义模拟Tabs组件
814浏览 • 1回复 待解决
ArkTs如何自定义容器组件?
2977浏览 • 1回复 待解决
HarmonyOS使用Canvas自定义绘制内容后,如何根据onTouch事件动态更新绘制的内容?
287浏览 • 1回复 待解决
如何使用canvas绘制图形?环境是API6,java编写自定义组件
2367浏览 • 1回复 待解决
HarmonyOS 自定义组件的事件处理
296浏览 • 1回复 待解决
HarmonyOS UI组件自定义点击范围
230浏览 • 1回复 待解决
HarmonyOS 键盘顶部添加自定义组件
223浏览 • 1回复 待解决
组件自定义回调函数实现
286浏览 • 1回复 待解决
HarmonyOS 自定义弹框组件问题
335浏览 • 1回复 待解决
自定义组件是否支持renderFit属性
1742浏览 • 1回复 待解决
本文自定义组件的主要的功能有折线图,曲线图,区域渐变覆盖等,如果需要更多的功能,也可以在此基础上进行扩展。
使用的核心API
核心代码解释
首先先描述下绘制步骤:
1. 先绘制坐标系,然后绘制坐标系上的点,再绘制坐标系上文字。
2. 然后绘制曲线图和折线图
3. 最后绘制区域覆盖的地方
4. 加入绘画效果 绘制前肯定要初始化各种画笔,以及设置控件的宽高等。首先初始化画笔
然后设置宽高,这里我直接将绘制组件设置高度一半
现在就可以开始进行绘制了,绘制之前我们要根据设置的数据来进行绘制,所以要提供设置数据的方法
这样设置数据的操作就好了;接下来还需要在绘制之前需要计算x轴和y轴每段的具体值,通过平分view的宽高来计算代码如下
然后就可以进行绘制了,首先绘制坐标系和坐标原点,代码如下:
效果图如下:
然后绘制坐标系上x,y轴刻度标记和小圆点:
效果如下:
之后就开始绘制折线图和曲线图。
效果图如下:
绘制曲线这里我是采用的三阶贝赛尔曲线进行绘制的,先取前后两个点的x的中点,设置给两个额外点的x值,两个额外点的y值分别设置为两个点的y值。
效果图如下:
到这里曲线图与折线就绘制好,最好给图形添加个动画效果,代码如下: