当前位置: 首页 > news >正文

Android 使用 eChart 设置标线

echart使用标线



Android部分:

import android.webkit.WebView;
import com.jianqu.plasmasterilizer.R;
import com.jianqu.plasmasterilizer.utils.DisplayUtils;
import com.jianqu.plasmasterilizer.utils.TimerUtil;
import java.util.ArrayList;
import java.util.List;
/**
* 监测
* index 3
* Created by yanyou on 2023/9/10.
*/
public class ChartFragment extends BaseFragment {
    private final String TAG = this.getClass().getName();
    private TimerUtil timerUtil;
    private int time = 100000;
    private int count = 120;
    private WebView webview;
    List<String> xdata = new ArrayList<>();
    List<Integer> Ydata = new ArrayList<>();
    List<Integer> values1 = new ArrayList<>();
    List<Integer> values2 = new ArrayList<>();
    List<Integer> values3 = new ArrayList<>();
    private int baseLine1 = 7000;
    private int baseLine2 = 5500;
    private int baseLine3 = 3500;
    @Override
    protected int setLayoutResouceId() {
        return getLayout();
    }
    private int getLayout() {
        int w = DisplayUtils.getScreenH(mActivity);
        int layoutId = 0;
        layoutId = R.layout.fragment_chart_10c;
        return layoutId;
    }
    @Override
    protected void initView() {
        findViewById(R.id.rv_back).setOnClickListener(view -> {
            mActivity.backFragment(2);
        });
        findViewById(R.id.ll_scaling).setOnClickListener(view -> {
            mActivity.goFragment(4);
        });
        findViewById(R.id.ll_set).setOnClickListener(view -> {
            mActivity.goFragment(6);
        });
        webview = findViewById(R.id.webview);
        int[] yValue1 = new int[]{0, 3000, 6000, 9000, 12000, 15000};
        for (int s : yValue1) {
            Ydata.add(s);
        }
        webview.getSettings().setJavaScriptEnabled(true);
        webview.getSettings().setAllowFileAccess(true);
        webview.loadUrl("file:///android_asset/chart.html");
        initTimerUtil();
    }
    private void initTimerUtil() {
        TimerUtil.OnTimerChangeListener onTimerChangeListener = new TimerUtil.OnTimerChangeListener() {
            @Override
            public void doChange() {
                doTimeChange();
            }
        };
        timerUtil = new TimerUtil(500, 500, onTimerChangeListener);
        timerUtil.timeStart();
    }
    private void doTimeChange() {
        time--;
        if (time > 0) {
            //
            int val = (int) (Math.random() * 1000) + 6500;
            values1.add(val);
            int val2 = (int) (Math.random() * 2000) + 4000;
            values2.add(val2);
            int val3 = (int) (Math.random() * 2300) + 2000;
            values3.add(val3);
            xdata.add("" + xdata.size());
            webview.loadUrl("javascript:doCreateChart(" + baseLine1 + "," + baseLine2 + "," + baseLine3 + "," + xdata + "," + Ydata + "," + values1 + "," + values2 + "," + values3 + ");");
        } else if (time == 0) {
            //
            timerUtil.timeStop();
        }
    }
    @Override
    protected boolean isRegisterEventBus() {
        return false;
    }
    @Override
    public void onDestroy() {
//        EventBus.getDefault().unregister(this);
        super.onDestroy();
    }
}

eChart部分:

https://download.csdn.net/download/anroidyanyou/88411884

http://www.lryc.cn/news/193053.html

相关文章:

  • 红队专题-Cobalt strike 4.x - Beacon重构
  • 一文掌握 Go 文件的写入操作
  • 小程序入门及案例展示
  • linux 安装python django pip 遇到的问题
  • 【问题解决】【爬虫】抓包工具charles与pycharm发送https请求冲突问题
  • Hadoop3教程(二):HDFS的定义及概述
  • 【物联网+JAVA 】智慧工地源码
  • 001数据安全传输-多端协议传输平台:Openssl安装和配置 - EVP代码测试
  • 关于小编入坑第512天
  • VS2015编译Qt工程发生MSB4018错误完整解决过程
  • 如何使用JMeter测试导入接口/导出接口
  • [入门一]C# webApi创建、与发布、部署、api调用
  • 关于Vue+webpack使用unocss编写CSS,打包后CSS没加前缀
  • 软件工程与计算总结(十一)人机交互设计
  • Jmeter组件执行顺序与作用域
  • 第一天商城项目
  • C++笔记之通用多态函数包装器std::function
  • Linux命令(92)之passwd
  • 光电柴微电网日前调度报告
  • Godot 单元测试
  • 2.9 深入GPU硬件架构及运行机制
  • 【苍穹外卖 | 项目日记】第四天
  • 零代码编程:用ChatGPT批量采集bookroo网页上的英文书目列表
  • 7.定时器
  • 计算机网络 | 网络层
  • 21GA-ELM,遗传算法优化ELM预测,并和优化前后以及真实数值进行对比,确定结果,基于MATLAB平台,程序已经调通,可以直接运行,需要直接拍下。
  • 287_C++_TaskQueue管理任务队列和定时器(头文件.h)
  • Hadoop+Zookeeper+HA错题总结(一)
  • React高级特性之context
  • 【OS】操作系统课程笔记 第五章 并发性——互斥、同步和通信