蒙在股里 发表于 2015-1-16 22:49:05

ASP网页编程之ASP天生折线图

ASP脚本是采用明文(plaintext)方式来编写的。折线图办法一:
<%dimtotal(7,3)
total(1,0)="中国谋划报"
total(2,0)="雇用网"
total(3,0)="51Job"
total(4,0)="新平易近晚报"
total(5,0)="旧事晚报"
total(6,0)="北方周末"
total(7,0)="羊城晚报"

total(0,1)="#FF0000,1.5,1,2,公司1"参数1线条的色彩,参数2线条的宽度,参数3线条的范例,参数4转机点的范例,参数5线条称号
total(1,1)=200
total(2,1)=1200
total(3,1)=900
total(4,1)=600
total(5,1)=1222
total(6,1)=413
total(7,1)=800
total(0,2)="#0000FF,1,2,3,公司2"
total(1,2)=400
total(2,2)=500
total(3,2)=1040
total(4,2)=1600
total(5,2)=522
total(6,2)=813
total(7,2)=980
total(0,3)="#004D00,1,1,3,公司3"
total(1,3)=900
total(2,3)=890
total(3,3)=1240
total(4,3)=1300
total(5,3)=722
total(6,3)=833
total(7,3)=1280
%><htmlxmlns:v="urn:schemas-microsoft-com:vml"xmlns:o="urn:schemas-microsoft-com:office:office">
<!-->
<style>
v:*{behavior:url(#default#VML)}
o:*{behavior:url(#default#VML)}
.shape{behavior:url(#default#VML)}
</style>
<!-->
<head>
<metahttp-equiv="Content-Type"content="text/html;charset=gb2312">
<title></title>
<style>
TD{FONT-SIZE:9pt}
</style></head>
<bodytopmargin=5leftmargin=0scroll=AUTO>
<%calltable2(total,100,90,600,250,3)%>
</body>
</html>
<%
functiontable2(total,table_x,table_y,all_width,all_height,line_no)
参数寄义(传送的数组,横坐标,纵坐标,图表的宽度,图表的高度,折线条数)
纯ASP代码天生图表函数2――折线图
龚叫(Passwordgm)QQ:25968152MSN:passwordgm@sina.comEmail:passwordgm@sina.com
自己十分乐意和ASP,VML,FLASH的喜好者在HTTP://topclouds.126.com举行交换和切磋
版本1.0最初修正日期2003-8-11
十分感激您利用这个函数,请您利用和转载时保存版权信息,这是对作者事情的最好的尊敬。
line_color="#69f"
left_width=70
total_no=ubound(total,1)
temp1=0
fori=1tototal_no
forj=1toline_no
iftemp1<total(i,j)thentemp1=total(i,j)
next
next
temp1=int(temp1)
iftemp1>9then
temp2=mid(cstr(temp1),2,1)
iftemp2>4then
temp3=(int(temp1/(10^(len(cstr(temp1))-1)))+1)*10^(len(cstr(temp1))-1)
else
temp3=(int(temp1/(10^(len(cstr(temp1))-1)))+0.5)*10^(len(cstr(temp1))-1)
endif
else
iftemp1>4thentemp3=10elsetemp3=5
endif
temp4=temp3
response.write"<v:rectid=_x0000_s1027alt=style=position:absolute;left:"&table_x+left_width&"px;top:"&table_y&"px;width:"&all_width&"px;height:"&all_height&"px;z-index:-1fillcolor=#9cfstroked=f><v:fillrotate=tangle=-45focus=100%type=gradient/></v:rect>"
fori=0toall_height-1stepall_height/5
response.write"<v:lineid=_x0000_s1027alt=style=position:absolute;left:0;text-align:left;top:0;flip:y;z-index:-1from="&table_x+left_width+length&"px,"&table_y+all_height-length-i&"pxto="&table_x+all_width+left_width&"px,"&table_y+all_height-length-i&"pxstrokecolor="&line_color&"/>"
response.write"<v:lineid=_x0000_s1027alt=style=position:absolute;left:0;text-align:left;top:0;flip:y;z-index:-1from="&table_x+(left_width-15)&"px,"&table_y+i&"pxto="&table_x+left_width&"px,"&table_y+i&"px/>"
response.write""
response.write"<v:shapeid=_x0000_s1025type=#_x0000_t202alt=style=position:absolute;left:"&table_x&"px;top:"&table_y+i&"px;width:"&left_width&"px;height:18px;z-index:1>"
response.write"<v:textboxinset=0px,0px,0px,0px><tablecellspacing=3cellpadding=0width=100%height=100%><tr><tdalign=right>"&temp4&"</td></tr></table></v:textbox></v:shape>"
temp4=temp4-temp3/5
next
response.write"<v:lineid=_x0000_s1027alt=style=position:absolute;left:0;text-align:left;top:0;flip:y;z-index:-1from="&table_x+left_width&"px,"&table_y+all_height&"pxto="&table_x+all_width+left_width&"px,"&table_y+all_height&"px/>"
response.write"<v:lineid=_x0000_s1027alt=style=position:absolute;left:0;text-align:left;top:0;flip:y;z-index:-1from="&table_x+left_width&"px,"&table_y&"pxto="&table_x+left_width&"px,"&table_y+all_height&"px/>"
dimline_code
redimline_code(line_no,5)
fori=1toline_no
line_temp=split(total(0,i),",")
line_code(i,1)=line_temp(0)
line_code(i,2)=line_temp(1)
line_code(i,3)=line_temp(2)
line_code(i,4)=line_temp(3)
line_code(i,5)=line_temp(4)
next
forj=1toline_no
fori=1tototal_no-1
x1=table_x+left_width+all_width*(i-1)/total_no
y1=table_y+(temp3-total(i,j))*(all_height/temp3)
x2=table_x+left_width+all_width*i/total_no
y2=table_y+(temp3-total(i+1,j))*(all_height/temp3)
response.write"<v:lineid=""_x0000_s1025""alt=""""style=position:absolute;left:0;text-align:left;top:0;z-index:1from="""&x1&"px,"&y1&"px""to="""&x2&"px,"&y2&"px""coordsize=""21600,21600""strokecolor="""&line_code(j,1)&"""strokeweight="""&line_code(j,2)&""">"
selectcaseline_code(j,3)
case1
case2
response.write"<v:strokedashstyle=11/>"
case3
response.write"<v:strokedashstyle=dash/>"
case4
response.write"<v:strokedashstyle=dashDot/>"
case5
response.write"<v:strokedashstyle=longDash/>"
case6
response.write"<v:strokedashstyle=longDashDot/>"
case7
response.write"<v:strokedashstyle=longDashDotDot/>"
caseelse
endselect
response.write"</v:line>"&CHR(13)
selectcaseline_code(j,4)
case1
case2
response.write"<v:rectid=""_x0000_s1027""style=position:absolute;left:"&x1-2&"px;top:"&y1-2&"px;width:4px;height:4px;z-index:2fillcolor="""&line_code(j,1)&"""strokecolor="""&line_code(j,1)&"""/>"&CHR(13)
case3
response.write"<v:ovalid=""_x0000_s1026""style=position:absolute;left:"&x1-2&"px;top:"&y1-2&"px;width:4px;height:4px;z-index:1fillcolor="""&line_code(j,1)&"""strokecolor="""&line_code(j,1)&"""/>"&CHR(13)
endselect
next
selectcaseline_code(j,4)
case1
case2
response.write"<v:rectid=""_x0000_s1027""style=position:absolute;left:"&x2-2&"px;top:"&y2-2&"px;width:4px;height:4px;z-index:2fillcolor="""&line_code(j,1)&"""strokecolor="""&line_code(j,1)&"""/>"&CHR(13)
case3
response.write"<v:ovalid=""_x0000_s1026""style=position:absolute;left:"&x2-2&"px;top:"&y2-2&"px;width:4px;height:4px;z-index:1fillcolor="""&line_code(j,1)&"""strokecolor="""&line_code(j,1)&"""/>"&CHR(13)
endselect
next
fori=1tototal_no
response.write"<v:lineid=_x0000_s1027alt=style=position:absolute;left:0;text-align:left;top:0;flip:y;z-index:-1from="&table_x+left_width+all_width*(i-1)/total_no&"px,"&table_y+all_height&"pxto="&table_x+left_width+all_width*(i-1)/total_no&"px,"&table_y+all_height+15&"px/>"
response.write""
response.write"<v:shapeid=_x0000_s1025type=#_x0000_t202alt=style=position:absolute;left:"&table_x+left_width+all_width*(i-1)/total_no&"px;top:"&table_y+all_height&"px;width:"&all_width/total_no&"px;height:18px;z-index:1>"
response.write"<v:textboxinset=0px,0px,0px,0px><tablecellspacing=3cellpadding=0width=100%height=100%><tr><tdalign=left>"&total(i,0)&"</td></tr></table></v:textbox></v:shape>"
next
tb_height=30
response.write"<v:rectid=_x0000_s1025style=position:absolute;left:"&table_x+all_width+20&"px;top:"&table_y&"px;width:100px;height:"&line_no*tb_height+20&"px;z-index:1/>"
fori=1toline_no
response.write"<v:shapeid=_x0000_s1025type=#_x0000_t202alt=style=position:absolute;left:"&table_x+all_width+25&"px;top:"&table_y+10+(i-1)*tb_height&"px;width:60px;height:"&tb_height&"px;z-index:1>"
response.write"<v:textboxinset=0px,0px,0px,0px><tablecellspacing=3cellpadding=0width=100%height=100%><tr><tdalign=left>"&line_code(i,5)&"</td></tr></table></v:textbox></v:shape>"
response.write"<v:rectid=_x0000_s1040alt=style=position:absolute;left:"&table_x+all_width+80&"px;top:"&table_y+10+(i-1)*tb_height+4&"px;width:30px;height:20px;z-index:1fillcolor="&line_code(i,1)&"><v:fillcolor2="&line_code(i,1)&"rotate=tfocus=100%type=gradient/></v:rect>"
next
endfunction
%>
办法二:
<%
不要修正以下数据,除非你晓得你在做甚么
#####################################
<p>Height=200//图表高度
Width=600//图表宽度
posX=390-Width/2//绝对扫瞄器的X地位
posY=70//绝对扫瞄器的Y地位
scaleX=50//最好为Width值的倍数
scaleY=50//最好为Height值的倍数
countX=Cint(Width/scaleX)
countY=Cint(Height/scaleY)
data="50,50|100,120|200,150|300,50|450,100"//要输出折线的点阵(竖线分开每一个组,逗号分开每一个组中的X和Y值)
TempData=Split(data,"|")
TempDataCount=UBound(TempData)+1

%>
<html>
<head>
<metahttp-equiv="Content-Type"content="text/html;charset=gb2312">
<!--CodingByPYPStudio-->
<title>折线图天生</title>
<styletype="text/css">
<!--
.upperLine{
border-bottom-width:1px;
border-top-style:none;
border-right-style:none;
border-bottom-style:solid;
border-left-style:none;
border-bottom-color:#FF0000;
}
-->
</style>
</head>
<body>
<tablewidth="80%"border="0"align="center"cellpadding="0"cellspacing="1"class="upperLine">
<tr>
<tdheight="30"align="center"><h2><strong>折线图题目</strong></h2></td>
</tr>
</table>
<!--天生折线图入手下手-->
<htmlxmlns:v="urn:schemas-microsoft-com:vml"xmlns:o="urn:schemas-microsoft-com:office:office">
<!-->
<style>
v:*

缺点:正版成本价格贵(盗版就不说了)、不够安全,大多数服务器用windows系统,没有linux安全

变相怪杰 发表于 2015-1-20 05:06:08

封装性使得代码逻辑清晰,易于管理,并且应用到ASP.Net上就可以使业务逻辑和Html页面分离,这样无论页面原型如何改变,业务逻辑代码都不必做任何改动;继承性和多态性使得代码的可重用性大大提高。

灵魂腐蚀 发表于 2015-1-28 16:09:07

用户端的浏览器不需要提供任何别的支持,这样大提高了用户与服务器之间的交互的速度。

若相依 发表于 2015-2-5 22:08:17

我可以结合自己的经验大致给你说一说,希望对你有所帮助,少走些弯路。

再现理想 发表于 2015-2-13 21:31:18

尽管MS自己讲C#内核中更多的象VC,但实际上我还是认为它和Java更象一些吧。首先它是面向对象的编程语言,而不是一种脚本,所以它具有面向对象编程语言的一切特性,比如封装性、继承性、多态性等等,这就解决了刚才谈到的ASP的那些弱点。

海妖 发表于 2015-3-4 01:21:49

我就感觉到ASP和一些常用的数据库编程以及软件工程方面的思想是非常重要的。我现在也在尝试自己做网页,这其中就用到了ASP,我想它的作用是可想而知的。

小妖女 发表于 2015-3-11 15:22:56

封装性使得代码逻辑清晰,易于管理,并且应用到ASP.Net上就可以使业务逻辑和Html页面分离,这样无论页面原型如何改变,业务逻辑代码都不必做任何改动;继承性和多态性使得代码的可重用性大大提高。

飘飘悠悠 发表于 2015-3-19 01:03:22

我可以结合自己的经验大致给你说一说,希望对你有所帮助,少走些弯路。

不帅 发表于 2015-3-27 00:11:09

跟学别的语言一样,先掌握变量,流程控制语句(就是ifwhileselect)等,函数/过程,数组
页: [1]
查看完整版本: ASP网页编程之ASP天生折线图