ASP+VML自動生成實時行情走勢圖

穩萊
 

ASP+VML自動生成實時行情走勢圖
 

ASP+VML自動生成實時行情走勢圖
數據庫為 test.mdb,其中表[pric]記錄某段時期的商品和價格資訊(假設每天收集一次各商品的價格)
該表包括如下幾個欄位
price(價格) shang_id(對應的商品ID) p_time(該價格的時間);具體數據請自行輸入;現根據該價格資訊生成某商品在某年某月的價格行情走勢圖(曲線圖,非柱狀圖)。


<!--tu.asp開始-->
< % if request("tyr")="" or request("tmon")="" or request("shid")="" or not isnumeric(request("tyr")) or not isnumeric(request("tmon")) or not isnumeric(request("shid")) then
response.write "參數錯誤,請確認您輸入了正確的網址。"
response.end
end if
dim conn,constr,db
db="test.mdb"
set conn=Server.CreateObject("ADODB.Connection")
constr="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" &server.MapPath(db)
conn.open constr
if err then
err.clear
conn.close
set conn=nothing
response.write "暫時無法訪問數據庫,請稍候再試。"
response.end
end if

'以上為連接數據庫部分

set rstemp=conn.execute("select top 1 price,p_time from [pric] where shang_id="&request("shid")&" and year(p_time)="&request("tyr")&" and month(p_time)="&request("tmon")&" order by price desc")
ttop=rstemp(0)
set rs=server.createobject("adodb.recordset")
sql="select price,p_time,shang_id from [pric] where shang_id="&request("shid")&" and year(p_time)="&request("tyr")&" and month(p_time)="&request("tmon")&""
rs.open sql,conn,1,1
i=0
do while not rs.eof and i<=31
pric=rs("price")
i=i+1
k=200+80*i
j=cint(2200-(pric/ttop)*2000)
tzb=tzb&k&","&j&" "
rs.movenext
loop %>
<html xmlns:v="urn:schemas-microsoft-com:vml">
<head>
< title>行情圖</title>
<STYLE>
v\:* { Behavior: url(#default#VML) }
</STYLE>
</head>
<body topmargin="0" leftmargin="0">
<v:group ID="group1" style="WIDTH:240pt;HEIGHT:300pt" coordsize="2400,3000">
<v:line from="200,100" to="200,2100" style="Z-INDEX:8;POSITION:absolute" strokeweight="1pt">
<v:stroke StartArrow="classic"/>
</v:line>
<v:line from="200,2100" to="2680,2100" style="Z-INDEX:8;POSITION:absolute" strokeweight="1pt">
<v:stroke EndArrow="classic"/>
</v:line>
<v:rect style="WIDTH:3000px;HEIGHT:2400px" coordsize="21600,21600" fillcolor="white" strokecolor="black" />
<v:PolyLine filled="false" Points="<%=tzb%>" style="position:relative"/>
<v:stroke StartArrow="Oval" EndArrow="Classic" dashstyle="Dot" />
</v:PolyLine>
</group>
</body>
</html>
< !--tu.asp結束-->

該頁網址后應跟上相應的參數tyr;tmon;shid分邊表示所查詢的年、月以及商品ID;例如:
test.asp?tyr=2004&tmon=10&shid=1
表示所查詢的是ID為1的商品于2004年10月的價格走勢圖。

最終的圖形顯示效果如下:


 
 
 

 給當前日誌評分:
Loading Vote
正在讀取評分資料...


文章來自: Tank部落格
引用通告: 查看所有引用 | 我要引用此文章
Tags:
相關日誌:

評論: 0 | 引用: 0 | 查看次數: -
發表評論
暱 稱:
密 碼: 遊客發言不需要密碼.
內 容:
驗證碼: 驗證碼
選 項:
雖然發表評論不用註冊,但是為了保護您的發言權,建議您註冊帳號.