導航:首頁 > 數據行情 > echarts股票實時數據

echarts股票實時數據

發布時間:2023-10-12 04:05:31

Ⅰ 實現Echarts中數據的動態獲取

1.客戶端通過ajax發送請求
先繪制一個最簡單的Echarts圖表:
(這里就直接貼上代碼了,直接用的是官網教程里非同步數據載入和更新里的代碼)
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html lang="zh-CN">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>ECharts</title>

<!-- 引入 echarts.js -->
<script type="text/javascript" src="echarts.min.js"></script>
<!-- 引入jquery.js -->
<script type="text/javascript" src="jquery-1.12.3.js"></script>
</head>

<body>
<!-- 為ECharts准備一個具備大小(寬高)的Dom -->
<div id="main" style="width: 600px;height:400px;"></div>

<script type="text/javascript">

var myChart = echarts.init(document.getElementById('main'));
// 顯示標題,圖例和空的坐標軸
myChart.setOption({
title: {
text: '非同步數據載入示例'
},
tooltip: {},
legend: {
data:['銷量']
},
xAxis: {
data: []
},
yAxis: {},
series: [{
name: '銷量',
type: 'bar',
data: []
}]
});

</script>

</body>
</html>
看到了吧,現在option中的xAxis和yAxis里的data都是空值。待會兒我們會用從伺服器取回的數據去」填滿「它。
下面貼上補充了ajax部分的完整前端代碼:
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html lang="zh-CN">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>ECharts</title>

<!-- 引入 echarts.js -->
<script type="text/javascript" src="echarts.min.js"></script>
<!-- 引入jquery.js -->
<script type="text/javascript" src="jquery-1.12.3.js"></script>
</head>

<body>
<!-- 為ECharts准備一個具備大小(寬高)的Dom -->
<div id="main" style="width: 600px;height:400px;"></div>

<script type="text/javascript">

var myChart = echarts.init(document.getElementById('main'));
// 顯示標題,圖例和空的坐標軸
myChart.setOption({
title: {
text: '非同步數據載入示例'
},
tooltip: {},
legend: {
data:['銷量']
},
xAxis: {
data: []
},
yAxis: {},
series: [{
name: '銷量',
type: 'bar',
data: []
}]
});

myChart.showLoading(); //數據載入完之前先顯示一段簡單的loading動畫

var names=[]; //類別數組(實際用來盛放X軸坐標值)
var nums=[]; //銷量數組(實際用來盛放Y坐標值)

$.ajax({
type : "post",
async : true, //非同步請求(同步請求將會鎖住瀏覽器,用戶其他操作必須等待請求完成才可以執行)
url : "TestServlet", //請求發送到TestServlet處
data : {},
dataType : "json", //返回數據形式為json
success : function(result) {
//請求成功時執行該函數內容,result即為伺服器返回的json對象
if (result) {
for(var i=0;i<result.length;i++){
names.push(result[i].name); //挨個取出類別並填入類別數組
}
for(var i=0;i<result.length;i++){
nums.push(result[i].num); //挨個取出銷量並填入銷量數組
}
myChart.hideLoading(); //隱藏載入動畫
myChart.setOption({ //載入數據圖表
xAxis: {
data: names
},
series: [{
// 根據名字對應到相應的系列
name: '銷量',
data: nums
}]
});

}

},
error : function(errorMsg) {
//請求失敗時執行該函數
alert("圖表請求數據失敗!");
myChart.hideLoading();
}
})

</script>

</body>
</html>

2.伺服器端Servlet接收請求
客戶端的請求url是』TestServlet『,那我們得先在web.xml配置以下映射:
<servlet>
<servlet-name>TestServlet</servlet-name>
<servlet-class>test.TestServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>TestServlet</servlet-name>
<url-pattern>/TestServlet</url-pattern>
</servlet-mapping>

然後就來著手寫處理客戶端請求的TestServlet啦!
3.生成json數據並返回給客戶端
生成Json數據要用到額外的jar包,這里我使用的jackson,json-lib 2010年就沒有再更新了… (2016-5-3日更:發現Google出品的Gson也蠻好用的,重點是很小巧,只需引入一個jar就搞定,用法也很簡單)
簡單介紹一下jackson的用法:
①:先去http://mvnrepository.com/下載 jackson-core.jar,jackson-annotations.jar,jackson-databind.jar(都是2.x版本,jackson官網不知為何不提供服務了…這三個jar讓我一陣好找)
②:在項目的項目WEB-INF/lib下引入這三個jar
然後就可以在TestServlet里使用jackson提供的工具類了。(關於jackson的詳細用法,這里貼一下官網教程:http://wiki.fasterxml.com/JacksonInFiveMinutes)
TestServlet代碼如下:
package test;

import java.io.IOException;
import java.util.*;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import com.fasterxml.jackson.databind.ObjectMapper;

public class TestServlet extends HttpServlet {

@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
doPost(req,resp);
}

@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

List<Proct> list = new ArrayList<Proct>();

//這里把「類別名稱」和「銷量」作為兩個屬性封裝在一個Proct類里,每個Proct類的對象都可以看作是一個類別(X軸坐標值)與銷量(Y軸坐標值)的集合
list.add(new Proct("襯衣", 10));
list.add(new Proct("短袖", 20));
list.add(new Proct("大衣", 30));

ObjectMapper mapper = new ObjectMapper(); //提供java-json相互轉換功能的類

String json = mapper.writeValueAsString(list); //將list中的對象轉換為Json格式的數組

//System.out.println(json);

//將json數據返回給客戶端
response.setContentType("text/html; charset=utf-8");
response.getWriter().write(json);
}

TestServlet類中用到的自定義的Proct類代碼如下:

package test;

public class Proct {

private String name; //類別名稱
private int num; //銷量

public Proct(String name, int num) {
this.name = name;
this.num = num;
}

public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getNum() {
return num;
}
public void setNum(int num) {
this.num = num;
}

}

4.客戶端接收數據後顯示
客戶端接受伺服器數據並解析後,就可以正常顯示圖表數據了:

Ⅱ 有哪些好用的Python庫

Python作為一門膠水語言,第三方庫眾多,下面我簡單介紹幾個好用的Python庫:

tensorflow

這是谷歌非常著名的一個開源機器學習框架,在業界非常受歡迎,可以靈活、快速的構建大規模機器學習應用(如神經網路等),性能和可移植性都非常不錯,支持GPU並行計算,如果你對機器學習比較感興趣,也想深入了解一下的話,可以學習一下這個框架,非常不錯:

pandas

如果你對數據分析比較感興趣,那麼pandas就是一個非常不錯的選擇,專門為數據分析而建,內置的函數和方法可以快速處理Excel,CSV等文件,而且提供了實時分析功能,代碼量更少,使用起來也更方便,對於數據處理來說,是一個非常不錯的分析工具:

matplotlib

這是Python的一個數據可視化庫,可以快速製作我們常見的圖表,如柱狀圖、餅狀圖、散點圖等,當然,也不僅僅限於這些,還有很多,如果你想畫出更多美麗的圖表,可以考慮學習一下這個庫,非常值得學習,當然,seaborn,pyecharts等這些可視化庫也非常不錯:

tushare

如果你對金融財經比較感興趣,想快速獲取股票等行情數據,也不想編寫復雜的處理代碼,那麼tushare就是一個非常不錯的選擇,自動整合了國內大部分金融財經數據,完成了數據從採集、清洗和存儲的全過程,只需簡單的幾行代碼就可以實時快速獲取到你所想要的數據,免費且開源:

PyQt

這是Python的一個GUI開發庫,如果你想快速創建一個桌面GUI程序,想直接拖拽控制項布局界面的話,那麼PyQt就是一個非常不錯的選擇,基於Qt的QtDesigner設計工具,你可以直接拖拽Qt大量的控制項快速構建出你自己的桌面應用,簡單而又快捷:

Kivy

如果你想利用Python開發一個安卓應用,那麼kivy就是一個非常不錯的選擇,這是Python的一個開源、跨平台的GUI庫,只需要編寫一套代碼,即可運行在大部分桌面及移動平台上,包括winsows,linux,ios,android等,非常不錯:

scrapy

這是Python的一個爬蟲框架,在也就非常受歡迎,如果你想快速的定製自己的爬蟲程序,又不想重復的造輪子的話,可以學習一下這個庫,只需要添加少量的代碼,就可啟動屬於自己的一個爬蟲應用,非常方便:

django

這是一個流行的PythonWeb框架,如果你想快速構建一個自己的web應用,那麼這個框架就非常值得學習,成熟穩重,基於MVC模式,使用起來非常方便,當然,也有輕量級的web框架,如flask,tornado等,也都非常不錯:

pygame

如果你想快速開發一個小型游戲,又不想低級語言的束縛,可以考慮學習一下這個庫,非常簡單,只需要少量的代碼便可構建一個游戲應用,當然,它也是一個非常不錯的GUI庫,對於桌面開發來說,也是一個不錯的選擇:

you-get

這是Python的一個視頻、音頻下載庫,如果你想免費快速下載優派卜酷、B站、騰訊等網站的視頻,安裝這個庫後,只塵豎穗需要簡單的一行命令就可直接下載,非常方便,纖嘩而且還可以在線觀看,查看視頻文件格式及清晰度等,當然,圖片也可直接下載:

就介紹這10個不錯的Python庫吧,對於日常學習開發來說,非常不錯,當然,還有許多其他好用的Python庫,這個可以到網上搜索一下,非常多,也歡迎大家留言補充。

Ⅲ 值得推薦的數據可視化工具有哪些

推薦幾款我比較常用的可視化工具

Excel

通常認為Excel不是可視化工具,不過也確實能作出一些很漂亮的圖表,主要問題在於默認的圖表設計都太丑了太丑了。如果你想做得好一點,可能要花的時間比較多。不支持一鍵拖拽生成圖表,在細節的處理上需要花更多的時間。

實際上還有很多其他的像echart,D3.js,highcharts等等,工具的選擇上是非常多的,我個人的建議是在精專一個的同時多了解一下其他的工具。「你手裡拿著錘子,看什麼都是釘子」,不要被你自己所掌握的工具所限制,我們的出發點始終是問題解決的。我們應當做的是「你眼裡看著釘子,拿什麼都是錘子」。(文/艾萌atanqing,一個略懂數據分析的心理咨詢師)

閱讀全文

與echarts股票實時數據相關的資料

熱點內容
銀行逆回購到期對股票市場是利好嗎 瀏覽:526
中投證券股票交易費用 瀏覽:595
深圳股票退市進三板 瀏覽:33
上海股票女投資人 瀏覽:979
錢龍股票軟體多股排列 瀏覽:20
支持股票app的智能手錶 瀏覽:460
股票連續漲停機率 瀏覽:43
神馬股份股票歷史交易數據 瀏覽:616
光大銀行股票三季度利潤 瀏覽:451
萬得股票軟體版下載 瀏覽:546
廈門銀行股票每股凈資產 瀏覽:605
亨鑫科技的股票 瀏覽:963
股票開戶用戶身份信息已經存在 瀏覽:561
第三章債券和股票估價 瀏覽:4
壁仞科技股票 瀏覽:317
股票前st是啥 瀏覽:643
002505股票歷史數據 瀏覽:948
通達信股票行情軟體的日線文件 瀏覽:571
協創數據股票主要業務 瀏覽:907
金發科技券股票 瀏覽:47