1. 程式人生 > >【Echarts教程】Ajax實現動態載入折線圖

【Echarts教程】Ajax實現動態載入折線圖

一、GIF圖

二、前臺程式碼

// 呼叫方法
hotlineLine();

// 定時重新整理
setInterval(function () {
	hotlineLine();
},5000);

function hotlineLine(){
	// 初始化圖表元素
	var hotlineLine = echarts.init(document.getElementById('hotlineLine_id'));
	$.get('${pageContext.request.getContextPath()}/m/hotline.do', function (res) {
		var option = {
			// 提示框元件,滑鼠經過餅圖時會出現提示框
			tooltip: {
				// 觸發型別
				// 座標軸觸發,主要在柱狀圖,折線圖等會使用類目軸的圖表中使用。
				trigger: 'axis'
			},
			// 每條折線的顏色
			color: ['#87CEFA', '#9AFF9A', '#C0FF3E','#DB7093'],
			// 圖例元件
			legend: {
				// 內容
				data:['呼入', '撥出', '應答', '使用者放棄'],
				// 樣式
				textStyle:{
					   fontSize:10,
					   color:'#66ffff'
				   },
				// 上距離,類似css中的margin
				top:'5%'
			},
			// 網格
			grid: {
				// 左距離
				left: '7%',
				right: '5%',
				bottom: '10%',
				top:'20%'
			},
			// 橫座標
			xAxis: {
				// 型別
				type: 'category',
				// 刻度
				data: ['08:00', '10:00', '12:00', '14:00', '16:00', '18:00', '20:00', '22:00', '24:00'],
				// 樣式
				axisLine:{
					// 橫座標線的顏色
					lineStyle:{
						color:'#66ffff'
					}
				}
			},
			yAxis: {
				type: 'value',
				name: '次數',
				axisLabel: {
					formatter: '{value}'
				},
				axisLine:{
					lineStyle:{
						color:'#66ffff'
					}
				},
				splitLine:{
					show: true,
					lineStyle:{
						color:'#66ffff'
					}
				}
			},
			series:  [
					  {
						  name:'呼入',
						  type:'line',
						  data:res[3]
					  },
					  {
						  name:'撥出',
						  type:'line',
						  data:res[2]
					  },
					  {
						  name:'應答',
						  type:'line',
						  data:res[1]
					  },
					  {
						  name:'使用者放棄',
						  type:'line',
						  data:res[0]
					  }
				],
				// 文字標籤
				label: {  
					//是否展示  
					show: true,
					position: 'top',
					textStyle: {  
						fontWeight:'bolder',  
						fontSize : '12',  
						fontFamily : '微軟雅黑',  
						color:defaultColor
					}  
				}
		};
		hotlineLine.setOption(option);
	});
}
<div class="rightMain01-sub03 box-border">
	<div class="box-title">話務指標趨勢圖</div>
	<div class="rightMain01-sub03-data">
		<div id="hotlineLine_id" style="height:340px;"></div>
	</div>
</div>

三、後臺程式碼

List<List<Integer>> hotlineList = new ArrayList<List<Integer>>();

@RequestMapping("/m/hotline.do")
@ResponseBody
public JSONArray hotline() {
	List<List<Integer>> returnList = new ArrayList<List<Integer>>();
	if (hotlineList.size() == 0 || hotlineList.get(0).size() >= 9) {
		hotlineList.clear();
		for (int i = 0; i < 4; i++) {
			List<Integer> l = new ArrayList<Integer>();
			l.add(i * 5 + AlexUtils.getRandomInteger(0, 5));
			hotlineList.add(l);
		}
	}
	for (int i = 0; i < hotlineList.size(); i++) {
		List<Integer> list = hotlineList.get(i);
		int thisSize = list.size();
		if (thisSize < 5) {
			list.add(list.get(thisSize - 1) + AlexUtils.getRandomInteger(1, 5));
		} else {
			list.add(list.get(thisSize - 1) - AlexUtils.getRandomInteger(1, 5));
		}

		returnList.add(list);
	}
	hotlineList = returnList;
	return JSONArray.fromObject(returnList);
}

public static int getRandomInteger(int min, int max) {
	int diff = max - min;
	return min + new Random().nextInt(diff);
}

資料格式:

[[1,3,4,5,7],[6,9,11,12,13],[10,11,12,13,16],[16,19,21,22,24]]

相關推薦

Echarts教程Ajax實現動態載入折線

一、GIF圖二、前臺程式碼// 呼叫方法 hotlineLine(); // 定時重新整理 setInterval(function () { hotlineLine(); },5000); function hotlineLine(){ // 初始化圖表元素 va

Echarts教程Ajax實現動態載入環狀餅

一、GIF圖二、前臺碼// 呼叫方法 workOrderPie(); // 定時重新整理 setInterval(function () { workOrderPie(); },5000); function workOrderPie(){ // 初始化圖表元素 v

EchartsEcharts2.0動態載入扇形

Echarts在資料視覺化方面廣泛使用,記錄一個使用Echarts動態載入扇形圖的例子。方便以後使用。 HTML程式碼: <head> <title>社會治理</title> <meta name="viewpor

GLSL教程(八)紋理貼

簡單的紋理貼圖(Simple Texture)為了在GLSL中應用紋理,我們需要訪問每個頂點的紋理座標。GLSL中提供了一些屬性變數,每個紋理單元一個: attribute vec4 gl_MultiTexCoord0;

Echarts動態載入折線X Y軸資料圖表資料

   前幾天,收到商家的反饋,希望可以有一個直觀的圖表,展示一個時間段裡的銷售額,客數,排班人數,並把銷售高峰期以及時間段反應出來。經同事的介紹,選擇了百度的  echarts,縮寫來自Enterprise Charts,一個純JavaScript的圖表庫。上官網查,官方的

echarts動態載入折線資料demo

前面幾節echarts的使用都是靜態常量值得設定,這肯定不能滿足我們在日常開發中的需要,平時專案的資料都是動態的,可變的,所以本章節介紹echarts結合Java 如何動態的載入資料。 =================方式一============

JavaFx教程第六部分:統計

第6部分的主題 建立一個統計圖顯示生日的分佈。 生日統計 在AddressApp中所有人員都有生日。當我們人員慶祝他們生日的時候,如果有一些生日的統計不是會更好。 我們使用柱狀圖,包含每個月的一個條形。每個條形顯示在指定月份中有多少人需要過生日。 統計FXML檢視

Python開發模塊:matplotlib 繪制折線

ins inux cnblogs linux linu free logs strong use matplotlib 1、安裝matplotlib ① linux系統 # 安裝matplotlib模塊 $ sudo apt-get install python-ma

python系列畫lda主題分佈折線

說明 利用python畫lda訓練出來的doc的主題分佈的折線圖。 主題分佈檔案為GibbsLDA++中casestudy中給出的。 程式碼 #coding:utf-8 import mat

echarts應用--橫軸每五分鐘取一個點,動態時間軸實現

需求:折線圖需要定點時間(例如五分鐘)取一個點,在一段範圍內(昨天的某個時間點到目前時間或者今天凌晨12點到目前的時間點),這種動態生成的時間軸。 以下以從當天的十二點開始,到當前時間點為止(五分鐘以及其他時間一個道理)的demo 推薦一個很好用的獲取時間以及改變想要的時間格式的外掛mo

Django 第十七篇Ajax實現用戶登錄

主頁 settime eth ret 不讓 字符 code 建圖 script 一、需要知道的新知識點 1、刷新驗證碼。給src屬性加一個?號。加個?會重新去請求 //#給驗證碼刷新 $(".vialdCode_img").click(f

手把手教你製作GIF動態圖片GIF教程

GIF動態圖片的原理就是在一段時間內顯示一系列圖片或者是幀,每一張圖或者幀都較前面那一張圖有些許的變化,當變化速度達到一定程度就產生這些圖片或者幀動起來的錯覺。小編今天所講的教程就是教大家如何錄製視訊,並將視訊分解成幀,從而再將其串起來,製作成GIF動態圖片的。這需要用到一款名為迅捷GIF製

asp.net頁面通過Javascript使用CanvasJS.Chart畫曲線,曲線實現動態載入後臺資料(通過ajax

頁面程式碼: <html> <head> <script src="jQuery.js" type="text/javascript"></script> <script src="https://canvasjs.com/assets/

必看CSS實現響應式佈局的方法與media的使用教程

用CSS實現響應式佈局 響應式佈局感覺很高大上,很難,但實際上只用CSS也能實現響應式佈局 要用的就是CSS中的沒接查詢,下面就介紹一下怎麼運用: 使用@media 的三種方法 1.直接在CSS檔案中使用: @media 型別 and (條件1) an

axure教程下拉框選擇動態顯示結果

說實話,這個案例我是在UCD大社群看到的,不過都是英文,愣是硬著頭皮學習的,幸好英文底子+google。 1、案例效果圖 這個例子的效果是,使用者切換左邊的下拉框選項,右邊的提示文字會隨之變化。當選中的是圖書時,文字框中的文字是“請輸入圖書名稱或作者”;當選中音樂時

菜鳥看框架——Linq實現動態模糊查詢

      引言   在上一篇部落格中我給大家介紹了我們怎樣用EF自動生成實體,當我們生成實體後就需 要面向實體來操作,而不再是針對資料庫中的表,這就需要一種新的知識——Linq,利 用Linq實

Axure教程動態面板製作彈出框效果

作為一名網際網路產品設計人員,相信很多同行每天上班電腦上都會執行著一個軟體——Axure,她能幫助網站需求設計者,快捷而簡便的建立基於網站構架圖的帶註釋頁面示意圖、操作流程圖、以及互動設計,並可自動生成用於演示的網頁檔案和規格檔案,以提供演示與開發。 隨著網際網路展品的發

Unity教程UGUI中如何動態生成精靈的幾種方法

本篇文章主要說sprite.Load()方法是如何新建精靈的 ---1.2D精靈物體的建立 這幾行程式碼是建立2D精靈的主要程式碼,這幾個程式碼都在start()函式中         //Transform EGO = Resources.Load("EmptyGO"

阿裏雲服務器配置phpstudy實現域名訪問圖文教程

rfi 生成 綠色 cin 分享 步驟 ecc targe 運行 首先,運行phpStudy,確保Apache和MySql啟動,綠色代表正常啟動狀態。 然後配置站點域名,打開phpStudy的站點域名管理,1、設置域名(你有的域名,最後需要域名解析);2、設置

ECharts+PHP+MySQ+ Ajax 實現圖表繪制

body 案例 ott line com grid 前臺 syn html 1、下載echarts插件,下載地址:http://echarts.baidu.com/ 2、具體入門案例就不啰嗦了,參考官方教程:http://echarts.baidu.com/tutorial