




下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
第基于Python輕松制作一個(gè)股票K線圖網(wǎng)站div
button
type="button"
data-toggle="collapse"
data-target=".navbar-collapse"
span
Toggle
navigation/span
span
/span
span
/span
span
/span
/button
a
href="/"rel="externalnofollow"rel="externalnofollow"Stock-Data/a
/div
div
ul
lia
href="/"rel="externalnofollow"rel="externalnofollow"Home/a/li
/ul
/div
/div
/div
{%
endblock
%}
{%
block
content
%}
div
{%
block
page_content
%}
{%
endblock
%}
/div
{%
endblock
%}
創(chuàng)建一個(gè)導(dǎo)航欄,并定義相關(guān)的block內(nèi)容
接下來編寫404.html文件,展示非法url請(qǐng)求地址時(shí)的頁面
{%
extends
"base.html"
%}
{%
block
title
%}Page
Not
Found{%
endblock
%}
{%
block
page_content
%}
div
h1Not
Found/h1
/div
{%
endblock
%}
對(duì)于index.html文件,就是我們需要展示K線圖的頁面,我們后面再處理。
編輯主邏輯
首先編寫一個(gè)檢查股票正確性的函數(shù)
def
check_stock(code):
n
=
0
l
=
[]
stock_code
=
pd.read_csv("stock_code_name.csv",
dtype=object)
stock_code.drop('Unnamed:
0',
axis=1,
inplace=True)
stock_list
=
stock_code.values.tolist()
for
i
in
stock_list:
if
code
in
i:
n
+=
1
l
=
i
else:
continue
return
n,
l
如果股票正確,則返回n=1,否則返回n=0
接下來再編寫獲取股票數(shù)據(jù)的函數(shù)
def
get_stock_data(code,
ctime):
df
=
ts.get_hist_data(code)
mydate
=
df[:ctime].index.tolist()
mydata
=
df[:ctime][['open',
'close',
'low',
'high']].values.tolist()
return
[mydate,
mydata]
下面就是把PyEcharts集成到Flask應(yīng)用了,可以按照官方的教程走,把PyEcharts的樣式文件等拷貝到自己的templates目錄下,再編寫一個(gè)用于調(diào)用kline_base()函數(shù)的視圖函數(shù)
@app.route("/Kline",
methods=['GET',
'POST'])
def
get_kline_chart():
stock_name
=
request.form.get('stockName')
query_time
=
request.form.get('queryTime')
if
not
stock_name:
stock_name
=
'平安銀行'
if
not
query_time:
query_time
=
30
status,
stock_code
=
check_stock(stock_name)
if
status
==
0:
return
'error
stock
code
or
name'
mydate,
mydata
=
get_stock_data(stock_code[0],
int(query_time))
c
=
kline_base(mydate,
mydata,
stock_code[1])
return
c.dump_options()
首先通過request變量獲取到前端傳遞過來的數(shù)據(jù),分別為stockName和queryTime,如果這兩個(gè)參數(shù)是空值時(shí),則賦予它們一個(gè)默認(rèn)值。
接著判斷股票代碼的正確性并獲取股票歷史數(shù)據(jù)。
最后調(diào)用kline_base函數(shù)畫出K線圖,并渲染到前端頁面上。
前端頁面編寫
最后我們來完成前端頁面的工作
首先定義一個(gè)表單,用于傳遞股票名稱,查詢時(shí)間
form
id="form1"
onsubmit="return
false"
action="#"
method="post"
p
id="p1"股票名稱:
input
name="stockName"
type="text"
id="stockName"
tabindex="1"
size="16"
value=""
placeholder="股票名稱"/
/p
p
id="p2"查詢時(shí)間:
input
name="queryTime"
type="text"
id="queryTime"
tabindex="2"
size="16"
value=""
placeholder="輸入30查詢近30天數(shù)據(jù)"/
/p
pinput
type="submit"
value="查詢"
/p
/form
然后就是通過JQuery來動(dòng)態(tài)獲取數(shù)據(jù)
function
getData()
{
var
chart
=
echarts.init(document.getElementById('kline'),
'white',
{renderer:
'canvas'});
$.ajax({
type:
"POST",
dataType:
"json",
url:
"/Kline"
,
data:
$('#form1').serialize(),
success:
function
(result)
{
chart
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 數(shù)字化轉(zhuǎn)型如何推動(dòng)公路貨運(yùn)行業(yè)效率變革的實(shí)證研究
- cka考試試題及答案
- b降c考試試題及答案
- 文旅融合視角下鄉(xiāng)村文化旅游產(chǎn)業(yè)創(chuàng)新體系構(gòu)建報(bào)告
- 2024廚師考試試題及答案
- 現(xiàn)代中醫(yī)兒科學(xué)
- 2025建筑行業(yè)項(xiàng)目部合同管理職位描述
- 2025租賃店鋪合同協(xié)議書示范文本
- 2025標(biāo)準(zhǔn)金融公司債權(quán)擔(dān)保借款合同范本
- 八年級(jí)下冊(cè)物理單元測(cè)試題(總匯)
- 護(hù)理科研選題與論文寫作
- 珠寶首飾加工工藝介紹課件
- 淘寶網(wǎng)-信息披露申請(qǐng)表
- 小微型客車租賃經(jīng)營備案表
- 教育培訓(xùn)機(jī)構(gòu)辦學(xué)許可證申請(qǐng)書(樣本)
- 瓷磚業(yè)務(wù)員提成方案
- 2022年一級(jí)注冊(cè)計(jì)量師案例分析真題
- “三級(jí)”安全安全教育記錄卡
- 愛蓮說-王崧舟
- 小微企業(yè)信用評(píng)級(jí)標(biāo)準(zhǔn)模板
- 車輛安全設(shè)施設(shè)備定期檢查臺(tái)賬
評(píng)論
0/150
提交評(píng)論