学习unigui【24】Echart的使用:多个坐标系
使用echart非常简单,网上有介绍。
主要放一个unihtmlFrame。然后unihtmlframe.text := 'html的代码',就会渲染(初次调用echart的js库要一点稍后)。
unigui本身的chart貌似不能动态生成。
option = {
title: [{
text: 'TOP10(抗菌药物使用人数)',
top: '1%',
left:'center',
textStyle:{
// color:'#d1ecff',
fontStyle:'normal',
fontWeight:'600',
fontFamily:'sans-serif',
fontSize:13
}
},{
text: "TOP10(使用率%)",
top:'18.2%',
left:'center',
textStyle:{
//color:'#ccc',
fontStyle:'normal',
fontWeight:'600',
fontFamily:'sans-serif',
fontSize:13
}
},
{
text: "TOP10(抗菌药物并送检人数)",
top:'36%',
left:'center',
textStyle:{
// color:'#ccc',
fontStyle:'normal',
fontWeight:'600',
fontFamily:'sans-serif',
fontSize:13
}
},
{
text: "TOP10(送检率)",
top:'52%',
left:'center',
textStyle:{
// color:'#ccc',
fontStyle:'normal',
fontWeight:'600',
fontFamily:'sans-serif',
fontSize:13
}
},
{
text: "TOP10(抗菌药物未送检人数)",
top:'70%',
left:'center',
textStyle:{
// color:'#ccc',
fontStyle:'normal',
fontWeight:'600',
fontFamily:'sans-serif',
fontSize:13
}
},
{
text: "TOP10(未送检率)",
top:'86%',
left:'center',
textStyle:{
// color:'#ccc',
fontStyle:'normal',
fontWeight:'600',
fontFamily:'sans-serif',
fontSize:13
}
},
],
legend: {},
tooltip: {},
dataset: {
source: [
// ['product', '2012', '2013', '2014', '2019'],
// ['Product A', 79.1, 66, 70.2, 155,99],
// ['Product B', 50, 50, 50, 50,88],
// ['Product c', 70, 50, 50, 50,77]
]
},
xAxis: [
{ type: 'category', gridIndex: 0,name: '科室',data: ['20121', '20131', '2014','2019','2020'] },
{ type: 'category', gridIndex: 1,name: '科室',data: ['20122', '20132', '20142','2019','手术'] },
{ type: 'category', gridIndex: 2,name: '科室',data: ['内科', '外科', '中医','心内科'] }, // 新增坐标轴,设置其所属网格为新添加的第三个网格
{ type: 'category', gridIndex: 3,name: '科室',data: ['内科', '外科', '中医','心内科'] },
{ type: 'category', gridIndex: 4,name: '科室',data: [] },
{ type: 'category', gridIndex: 5,name: '科室',data: ['内科', '外科', '中医','心内科'] }
],
yAxis: [
{ gridIndex: 0,name:'' },
{ gridIndex: 1,name:'' },
{ gridIndex: 2,name:'' }, // 新增坐标轴,设置其所属网格为新添加的第三个网格
{ gridIndex: 3,name:'' },
{ gridIndex: 4,name:'' },
{ gridIndex: 5,name:'' }
],
grid: [
{id: 'grid-top-1', top: '5%', height: '10%',title : '报警、处理次数分析统计'},
{id: 'grid-top-2', top: '22%', height: '10%'},
{id: 'grid-top-3', top: '41%', height: '8%'},
{id: 'grid-bottom-1',bottom: '3%', height: '8%'},
{id: 'grid-bottom-2',bottom: '17%', height: '10%'},
{id: 'grid-bottom-3',bottom: '35%', height: '10%'}
],
series: [
{ label:{show:true,position:'top',formatter:function(data){return data.value+'人'}},
type: 'bar',seriesLayoutBy: 'row', xAxisIndex: 0, yAxisIndex: 0,data:[79.1, 66, 70.2, 155,99] },
{ label:{show:true,position:'top',formatter:function(data){return data.value+'人'}},
type: 'bar', seriesLayoutBy: 'row', xAxisIndex: 2, yAxisIndex: 2, data:[50, 60, 90, 50,88] },
{ label:{show:true,position:'top',formatter:function(data){return data.value+'%'}},
type: 'bar', seriesLayoutBy: 'row', xAxisIndex: 1, yAxisIndex: 1,data:[70, 50, 50, 50,77] },
// 新增系列
{ label:{show:true,position:'top',formatter:function(data){return data.value+'%'}},
type: 'bar', seriesLayoutBy: 'row', xAxisIndex: 3, yAxisIndex: 3, data: [70, 50, 50, 50,77] },
{ type: 'bar', seriesLayoutBy: 'row', xAxisIndex: 4, yAxisIndex: 4, data: [] },
{ type: 'bar', seriesLayoutBy: 'row', xAxisIndex: 5, yAxisIndex: 5, data: [70, 50, 50, 50,77] },
]
};

需要更新数据的话,直接使用占位符替换。然后把代码赋值给uniHTMLFrame.text,立马渲染出来。
学习unigui【24】Echart的使用:多个坐标系的更多相关文章
- iOS 阶段学习第24天笔记(Block的介绍)
iOS学习(OC语言)知识点整理 一.Block 的介绍 1)概念: block 是一种数据类型,类似于C语言中没有名字的函数,可以接收参数,也可以返回值与C函数一样被调用 封装一段代码 可以在任何地 ...
- android学习笔记24——事件处理
事件处理 android提供了两种事件处理机制: 1.基于回调的事件处理 2.基于监听器的事件处理(通过绑定特定事件监听器) 注意: android对于基于回调的事件处理而言,主要做法就是重写andr ...
- C++学习笔记24,方法重写与方法隐藏
该博文仅用于交流学习.请慎用于不论什么商业用途.本博主保留对该博文的一切权利. 博主博客:http://blog.csdn.net/qq844352155 转载请注明出处: 方法重写.是指在子类中又一 ...
- ArcGIS API for JavaScript 4.2学习笔记[24] 【IdentifyTask类】的使用(结合IdentifyParameters类)(第七章完结)
好吧,我都要吐了. 接连三个例子都是类似的套路,使用某个查询参数类的实例,结合对应的Task类,对返回值进行取值.显示. 这个例子是Identify识别,使用了TileLayer这种图层,数据来自Se ...
- Kali学习笔记24:Nikto、Skipfish
文章的格式也许不是很好看,也没有什么合理的顺序 完全是想到什么写一些什么,但各个方面都涵盖到了 能耐下心看的朋友欢迎一起学习,大牛和杠精们请绕道 实验环境: Kali机器IP:192.168.163. ...
- Java学习笔记24(Map集合)
Map接口: Map接口与Collection接口无继承关系. 区别:Collection中的元素是孤立的,一个一个存进去的. Map作为一个映射集合,每一个元素包含Key-value对(键-值对). ...
- [原创]java WEB学习笔记24:MVC案例完整实践(part 5)---删除操作的设计与实现
本博客为原创:综合 尚硅谷(http://www.atguigu.com)的系统教程(深表感谢)和 网络上的现有资源(博客,文档,图书等),资源的出处我会标明 本博客的目的:①总结自己的学习过程,相当 ...
- Linux下汇编语言学习笔记24 ---
这是17年暑假学习Linux汇编语言的笔记记录,参考书目为清华大学出版社 Jeff Duntemann著 梁晓辉译<汇编语言基于Linux环境>的书,喜欢看原版书的同学可以看<Ass ...
- PHP全栈学习笔记24
PHP in_array() 函数 定义和用法 in_array() 函数搜索数组中是否存在指定的值. type 参数被设置为 TRUE,则搜索区分大小写. 语法 in_array(search,ar ...
- 大数据学习(24)—— Spark入门
在学Spark之前,我们再回顾一下MapReduce的知识,这对我们理解Spark大有裨益. 在大数据的技术分层中,Spark和MapReduce同为计算层的批处理技术,但是Spark比MapRedu ...
随机推荐
- Task异常处理的坑
全局异常 TaskScheduler.UnobservedTaskException += (e, args) =>{ MessageBox.Show("ddddddddddddddd ...
- c# Polygon 画多边形,
//随机多边形:using System; using System.Collections.Generic; using System.Linq; using System.Text; using ...
- 对rpc长连接与短连接的思考
大家好,我是思无邪,某go中厂开发工程师,也是OSPP2024的学生参与者! 如果你觉得我的文章有帮助,记得三连支持一下哦! 目前正在深入研究源码,与你们一起进步,共同攻克编程难关! 欢迎关注我的公众 ...
- oracle配置SGA参数不当导致不能正确启动数据库实例处理
原因:生成环境数据库想要增加数据库内存配置参数SGA_TARGET增加到42G,但是没有配置SGA_MAX_SIZE参数值,导致SHUTDOWN IMMEDIATE停止数据库,再STARTUP启动数据 ...
- XLSReadWriteII5的使用示例
procedure TForm1.Button1Click(Sender: TObject); var i, n: Integer; XLS: TXLSReadWriteII5; // 引用XLSRe ...
- EIP、VIP、RIP的区别
本文分享自天翼云开发者社区<EIP.VIP.RIP的区别>,作者:魏****猛 EIP.VIP.RIP都是网络中经常使用的术语,但是它们的意义和使用场景是不同的. 首先,EIP(Elast ...
- Linux安装Python 3.11
Linux安装python 在Linux上安装Python 3.11,你可以按照以下步骤进行.这些步骤以CentOS为例,但其他Linux发行版的过程大同小异,可能只需稍作调整. 1. 检查Pytho ...
- server_patrol.sh服务器巡查脚本
server_patrol.sh #!/bin/bash #!/usr/bin/expect -f#! auther by wangxp #定义一个变量 LANG="zh_CN.UTF-8& ...
- Atcoder ABC390F Double Sum 3 题解 [ 绿 ] [ 贡献思维 ] [ 计数 ]
Double Sum 3:简单计数题. 思路 首先考虑单个区间的 \(f\) 值如何计算,显然等于值域上连续段的个数.那么我们进一步观察值域上连续段的性质,发现一个连续段的开头一定满足比开头小 \(1 ...
- 分享一个 Windows 下的透明锁屏工具【开源】
透明锁屏 担心展示内容时被误操作打断? 害怕离开后忘记锁屏导致隐私泄露? 厌倦了千篇一律的系统锁屏界面? 透明锁屏 了解一下. 功能特点 告别误操作:锁屏状态下,屏幕内容依然可见,视频播放.PPT 演 ...