【数据可视化】在 ionic 中使用 Highcharts

环境准备

通过下面的命令安装 ionic 及相关依赖包,其中 cordova 是用来将 web 资源(包括 HTML、SCSS、Typescript)转换成 Native 应用的包

npm install ionic cordova -g

创建 ionic 项目

ionic start highcharts-ionic blank

简单说明如下

1、highcharts-ionic 为项目名称,并且会创建对应的目录

2、blank 为 ionic 模板名,即用 blank 模板创建项目

通过下面的命令启动 ionic 服务,其中 -l 参数为开启实验室功能,即开启多平台模拟器

ionic serve -l

创建 Highcharts 图表

首先需要下载 Highcharts 包

npm install highcharts --save

接下来就是编写代码了,首先打开src/pages/home/home.html在合适的位置添加一个 div 容器

需要编辑的文件

<div id="conainert"></div>

然后打开home.ts(和上面的 home.html 在同一个目录),引入 highcharts 模块,并在 ionViewDidLoad 函数里编写图表代码,实例代码如下:

import { Component } from '@angular/core';

import { NavController } from 'ionic-angular';

import * as Highcharts from 'highcharts';

@Component({

selector: 'page-home',

templateUrl: 'home.html'

})

export class HomePage {

constructor(public navCtrl: NavController) {

}

ionViewDidLoad(){

var chart = Highcharts.chart('container', {

title: {

text: '不同城市的月平均气温',

x: -20

},

subtitle: {

text: '数据来源: WorldClimate.com',

x: -20

},

xAxis: {

categories: ['一月', '二月', '三月', '四月', '五月', '六月', '七月', '八月', '九月', '十月', '十一月', '十二月']

},

yAxis: {

title: {

text: '温度 (°C)'

},

plotLines: [{

value: 0,

width: 1,

color: '#808080'

}]

},

tooltip: {

valueSuffix: '°C'

},

legend: {

layout: 'vertical',

align: 'right',

verticalAlign: 'middle',

borderWidth: 0

},

series: [{

name: '东京',

data: [7.0, 6.9, 9.5, 14.5, 18.2, 21.5, 25.2, 26.5, 23.3, 18.3, 13.9, 9.6]

}, {

name: '纽约',

data: [-0.2, 0.8, 5.7, 11.3, 17.0, 22.0, 24.8, 24.1, 20.1, 14.1, 8.6, 2.5]

}, {

name: '柏林',

data: [-0.9, 0.6, 3.5, 8.4, 13.5, 17.0, 18.6, 17.9, 14.3, 9.0, 3.9, 1.0]

}, {

name: '伦敦',

data: [3.9, 4.2, 5.7, 8.5, 11.9, 15.2, 17.0, 16.6, 14.2, 10.3, 6.6, 4.8]

}]

});

}

}

保存文件,并重新启动 ionic 服务,没有意外的话,页面效果如图

同样的我们可以参考Highcharts 官方实例编写一个实时刷新的例子,运行结果如下图

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 74,814评论 12 116
  • LRC乐山无线电现货供应只配合ODM和OEM,深圳市光与电子有限公司 电话0755-82574660 825420...
    香港光与电子企业阅读 506评论 0 0
  • 光与电子长期供应现货如下寻OEM ODM配合 联系杨先生 电话075582574660 1N4148W 350 1...
    香港光与电子企业阅读 319评论 0 0
  • 雨哥,您好! 我主要是从事产品外包装这块的业务,从事了一年多,业务主要来源于江浙沪长三角这边,经过一年多的努力,自...
    智盛心法阅读 32评论 0 0
  • 文/汝之尾巴草 不知道有多少人还习惯看农历,我知道今天是农历的七月十五,中元节。 中元节又叫“亡人节”、“鬼节”。...
    汝之尾巴草阅读 202评论 26 38