ASP生成柱型体,折线图,饼图源代码

 

< %
function  table1(total,table_x,table_y,thickness,table_width,all_width,all_height,table_type)
' 参数含义(传递的数组,横坐标,纵坐标,柱子的厚度,柱子的宽度,图表的宽度,图表的高度,图表的类型)
'
纯ASP代码生成图表函数1——柱状图

dim  tb_color( 7 , 2 )
tb_color(
1 , 1 ) = " #d1ffd1"
tb_color( 2 , 1 ) = " #ffbbbb"
tb_color( 3 , 1 ) = " #ffe3bb"
tb_color( 4 , 1 ) = " #cff4f3"
tb_color( 5 , 1 ) = " #d9d9e5"
tb_color( 6 , 1 ) = " #ffc7ab"
tb_color( 7 , 1 ) = " #ecffb7"

tb_color( 1 , 2 ) = " #00ff00"
tb_color( 2 , 2 ) = " #ff0000"
tb_color( 3 , 2 ) = " #ff9900"
tb_color( 4 , 2 ) = " #33cccc"
tb_color( 5 , 2 ) = " #666699"
tb_color( 6 , 2 ) = " #993300"
tb_color( 7 , 2 ) = " #99cc00"

line_color = " #69f"
left_width = 70
length
= thickness / 2
total_no
= ubound (total, 1 )

temp1
= 0
for  i = 1   to  total_no
    
if  temp1 < total(i, 1 then  temp1 = total(i, 1 )
next
temp1
= int (temp1)
if  temp1 > 9   then
    temp2
= mid ( cstr (temp1), 2 , 1 )
    
if  temp2 > 4   then  
        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 )
    
end   if
else
    
if  temp1 > 4   then  temp3 = 10   else  temp3 = 5
end   if
temp4
= temp3
response.write 
" <!--[if gte vml 1]><v:rect id='_x0000_s1027' alt='' style='position:absolute;left: " & table_x + left_width & " px;top: " & table_y & " px;width: " & all_width & " px;height: " & all_height & " px;z-index:-1' fillcolor='#9cf' stroked='f'><v:fill rotate='t' angle='-45' focus='100%' type='gradient'/></v:rect><![endif]-->"
response.write  " <!--[if gte vml 1]><v:line id='_x0000_s1027' alt='' style='position:absolute;left:0;text-align:left;top:0;flip:y;z-index:-1' from=' " & table_x + left_width & " px, " & table_y + all_height & " px' to=' " & table_x + all_width + left_width & " px, " & table_y + all_height & " px'/><![endif]-->"
response.write  " <!--[if gte vml 1]><v:line id='_x0000_s1027' alt='' style='position:absolute;left:0;text-align:left;top:0;flip:y;z-index:-1' from=' " & table_x + left_width & " px, " & table_y & " px' to=' " & table_x + left_width & " px, " & table_y + all_height & " px'/><![endif]-->"

select   case  table_type
case   " A"
table_space = (all_width - table_width * total_no) / total_no
response.write 
" <!--[if gte vml 1]><v:line id='_x0000_s1027' alt='' style='position:absolute;left:0;text-align:left;top:0;flip:y;z-index:-1' from=' " & table_x + left_width + length & " px, " & table_y & " px' to=' " & table_x + left_width + length & " px, " & table_y + all_height - length & " px' strokecolor=' " & line_color & " '/><![endif]-->"
for  i = 0   to  all_height - 1  step all_height / 5
    response.write 
" <!--[if gte vml 1]><v:line id='_x0000_s1027' alt='' style='position:absolute;left:0;text-align:left;top:0;flip:y;z-index:-1' from=' " & table_x + left_width & " px, " & table_y + all_height - length - i & " px' to=' " & table_x + left_width + length & " px, " & table_y + all_height - i & " px' strokecolor=' " & line_color & " '/><![endif]-->"
    response.write  " <!--[if gte vml 1]><v:line id='_x0000_s1027' alt='' style='position:absolute;left:0;text-align:left;top:0;flip:y;z-index:-1' from=' " & table_x + left_width + length & " px, " & table_y + all_height - length - i & " px' to=' " & table_x + all_width + left_width & " px, " & table_y + all_height - length - i & " px' strokecolor=' " & line_color & " '/><![endif]-->"
    response.write  " <!--[if gte vml 1]><v:line id='_x0000_s1027' alt='' style='position:absolute;left:0;text-align:left;top:0;flip:y;z-index:-1' from=' " & table_x + (left_width - 15 ) & " px, " & table_y + i & " px' to=' " & table_x + left_width & " px, " & table_y + i & " px'/><![endif]-->"
    response.write  " <!--[if gte vml 1]>"
    response.write  " <v:shape id='_x0000_s1025' type='#_x0000_t202' alt='' style='position:absolute;left: " & table_x & " px;top: " & table_y + i & " px;width: " & left_width & " px;height:18px;z-index:1'>"
    response.write  " <v:textbox inset='0px,0px,0px,0px'><table cellspacing='3' cellpadding='0' width='100%' height='100%'><tr><td align='right'> " & temp4 & " </td></tr></table></v:textbox></v:shape><![endif]-->"
    temp4 = temp4 - temp3 / 5
next  

for  i = 1   to  total_no
    temp_space
= table_x + left_width + table_space / 2 + table_space * (i - 1 ) + table_width * (i - 1 )
    response.write 
" <v:rect id='_x0000_s1025' alt='' style='position:absolute;left:"
    response.write temp_space
    response.write 
" px;top:"
    response.write table_y + all_height * ( 1 - (total(i, 1 ) / temp3))
    response.write 
" px;width: " & table_width & " px;height: " & all_height * (total(i, 1 ) / temp3) & " px;z-index:1' fillcolor=' " & tb_color(i, 2 ) & " '>"
    response.write  " <v:fill color2=' " & tb_color(i, 1 ) & " ' rotate='t' type='gradient'/>"
    response.write  " <o:extrusion v:ext='view' backdepth=' " & thickness & " pt' color=' " & tb_color(i, 2 ) & " ' on='t'/>"
    response.write  " </v:rect>"
    response.write  " <v:shape id='_x0000_s1025' type='#_x0000_t202' alt='' style='position:absolute;left: " & temp_space & " px;top: " & table_y + all_height * ( 1 - (total(i, 1 ) / temp3)) - table_width & " px;width: " & table_space + 15 & " px;height:18px;z-index:1'>"
    response.write  " <v:textbox inset='0px,0px,0px,0px'><table cellspacing='3' cellpadding='0' width='100%' height='100%'><tr><td align='center'> " & total(i, 1 ) & " </td></tr></table></v:textbox></v:shape>"

    response.write  " <v:shape id='_x0000_s1025' type='#_x0000_t202' alt='' style='position:absolute;left: " & temp_space - table_space / 2 & " px;top: " & table_y + all_height + 1 & " px;width: " & table_space + table_width & " px;height:18px;z-index:1'>"
    response.write  " <v:textbox inset='0px,0px,0px,0px'><table cellspacing='3' cellpadding='0' width='100%' height='100%'><tr><td align='center'> " & total(i, 2 ) & " </td></tr></table></v:textbox></v:shape>"
next
Case   " B"
table_space = (all_height - table_width * total_no) / total_no
response.write 
" <!--[if gte vml 1]><v:line id='_x0000_s1027' alt='' style='position:absolute;left:0;text-align:left;top:0;flip:y;z-index:-1' from=' " & table_x + left_width + length & " px, " & table_y + all_height - length & " px' to=' " & table_x + left_width + all_width & " px, " & table_y + all_height - length & " px' strokecolor=' " & line_color & " '/><![endif]-->"
for  i = 0   to  all_width - 1  step all_width / 5
    response.write 
" <!--[if gte vml 1]><v:line id='_x0000_s1027' alt='' style='position:absolute;left:0;text-align:left;top:0;flip:y;z-index:-1' from=' " & table_x + left_width + i & " px, " & table_y + all_height - length & " px' to=' " & table_x + left_width + length + i & " px, " & table_y + all_height & " px' strokecolor=' " & line_color & " '/><![endif]-->"
    response.write  " <!--[if gte vml 1]><v:line id='_x0000_s1027' alt='' style='position:absolute;left:0;text-align:left;top:0;flip:y;z-index:-1' from=' " & table_x + left_width + length + i & " px, " & table_y + all_height - length & " px' to=' " & table_x + left_width + length + i & " px, " & table_y & " px' strokecolor=' " & line_color & " '/><![endif]-->"
    response.write  " <!--[if gte vml 1]><v:line id='_x0000_s1027' alt='' style='position:absolute;left:0;text-align:left;top:0;flip:y;z-index:-1' from=' " & table_x + left_width + i + all_width / 5 & " px, " & table_y + all_height & " px' to=' " & table_x + left_width + i + all_width / 5 & " px, " & table_y + all_height + 15 & " px'/><![endif]-->"
    response.write  " <!--[if gte vml 1]>"
    response.write  " <v:shape id='_x0000_s1025' type='#_x0000_t202' alt='' style='position:absolute;left: " & table_x + left_width + i + all_width / 5 - left_width & " px;top: " & table_y + all_height & " px;width: " & left_width & " px;height:18px;z-index:1'>"
    response.write  " <v:textbox inset='0px,0px,0px,0px'><table cellspacing='3' cellpadding='0' width='100%' height='100%'><tr><td align='right'> " & temp4 & " </td></tr></table></v:textbox></v:shape><![endif]-->"
    temp4 = temp4 - temp3 / 5
next

for  i = 1   to  total_no
    temp_space
= table_space / 2 + table_space * (i - 1 ) + table_width * (i - 1 )
    response.write 
" <v:rect id='_x0000_s1025' alt='' style='position:absolute;left:"
    response.write table_x + left_width
    response.write 
" px;top:"
    response.write table_y + temp_space
    response.write 
" px;width: " & all_width * (total(i, 1 ) / temp3) & " px;height: " & table_width & " px;z-index:1' fillcolor=' " & tb_color(i, 2 ) & " '>"
    response.write  " <v:fill color2=' " & tb_color(i, 1 ) & " ' rotate='t' angle='-90' focus='100%' type='gradient'/>"
    response.write  " <o:extrusion v:ext='view' backdepth=' " & thickness & " pt' color=' " & tb_color(i, 2 ) & " ' on='t'/>"
    response.write  " </v:rect>"
    response.write  " <v:shape id='_x0000_s1025' type='#_x0000_t202' alt='' style='position:absolute;left: " & table_x + left_width + all_width * (total(i, 1 ) / temp3) + thickness / 2 & " px;top: " & table_y + temp_space & " px;width: " & table_space + 15 & " px;height:18px;z-index:1'>"
    response.write  " <v:textbox inset='0px,0px,0px,0px'><table cellspacing='3' cellpadding='0' width='100%' height='100%'><tr><td align='center'> " & total(i, 1 ) & " </td></tr></table></v:textbox></v:shape>"

    response.write  " <v:shape id='_x0000_s1025' type='#_x0000_t202' alt='' style='position:absolute;left: " & table_x & " px;top: " & table_y + temp_space & " px;width: " & left_width & " px;height:18px;z-index:1'>"
    response.write  " <v:textbox inset='0px,0px,0px,0px'><table cellspacing='3' cellpadding='0' width='100%' height='100%'><tr><td align='right'> " & total(i, 2 ) & " </td></tr></table></v:textbox></v:shape>"
next
case   else
end   select

end function
%
>

 

< %
function  table2(total,table_x,table_y,all_width,all_height,line_no)
' 参数含义(传递的数组,横坐标,纵坐标,图表的宽度,图表的高度,折线条数)
'
纯ASP代码生成图表函数2——折线图

line_color
= " #69f"
left_width = 70
total_no
= ubound (total, 1 )

temp1
= 0
for  i = 1   to  total_no
    
for  j = 1   to  line_no
        
if  temp1 < total(i,j)  then  temp1 = total(i,j)
    
next
next
temp1
= int (temp1)
if  temp1 > 9   then
    temp2
= mid ( cstr (temp1), 2 , 1 )
    
if  temp2 > 4   then  
        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 )
    
end   if
else
    
if  temp1 > 4   then  temp3 = 10   else  temp3 = 5
end   if
temp4
= temp3
response.write 
" <v:rect id='_x0000_s1027' alt='' style='position:absolute;left: " & table_x + left_width & " px;top: " & table_y & " px;width: " & all_width & " px;height: " & all_height & " px;z-index:-1' fillcolor='#9cf' stroked='f'><v:fill rotate='t' angle='-45' focus='100%' type='gradient'/></v:rect>"
for  i = 0   to  all_height - 1  step all_height / 5
    response.write 
" <v:line id='_x0000_s1027' alt='' style='position:absolute;left:0;text-align:left;top:0;flip:y;z-index:-1' from=' " & table_x + left_width + length & " px, " & table_y + all_height - length - i & " px' to=' " & table_x + all_width + left_width & " px, " & table_y + all_height - length - i & " px' strokecolor=' " & line_color & " '/>"
    response.write  " <v:line id='_x0000_s1027' alt='' style='position:absolute;left:0;text-align:left;top:0;flip:y;z-index:-1' from=' " & table_x + (left_width - 15 ) & " px, " & table_y + i & " px' to=' " & table_x + left_width & " px, " & table_y + i & " px'/>"
    response.write  " "
    response.write  " <v:shape id='_x0000_s1025' type='#_x0000_t202' alt='' style='position:absolute;left: " & table_x & " px;top: " & table_y + i & " px;width: " & left_width & " px;height:18px;z-index:1'>"
    response.write  " <v:textbox inset='0px,0px,0px,0px'><table cellspacing='3' cellpadding='0' width='100%' height='100%'><tr><td align='right'> " & temp4 & " </td></tr></table></v:textbox></v:shape>"
    temp4 = temp4 - temp3 / 5
next
response.write 
" <v:line id='_x0000_s1027' alt='' style='position:absolute;left:0;text-align:left;top:0;flip:y;z-index:-1' from=' " & table_x + left_width & " px, " & table_y + all_height & " px' to=' " & table_x + all_width + left_width & " px, " & table_y + all_height & " px'/>"
response.write  " <v:line id='_x0000_s1027' alt='' style='position:absolute;left:0;text-align:left;top:0;flip:y;z-index:-1' from=' " & table_x + left_width & " px, " & table_y & " px' to=' " & table_x + left_width & " px, " & table_y + all_height & " px'/>"

dim  line_code
redim  line_code(line_no, 5 )
for  i = 1   to  line_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
for  j = 1   to  line_no
    
for  i = 1   to  total_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:line id=""_x0000_s1025"" alt="""" style='position:absolute;left:0;text-align:left;top:0;z-index:1' from="" " & x1 & " px, " & y1 & " px"" to="" " & x2 & " px, " & y2 & " px"" coordsize=""21600,21600"" strokecolor="" " & line_code(j, 1 ) & " "" strokeweight="" " & line_code(j, 2 ) & " "">"
         select   case  line_code(j, 3 )
        
case   1
        
case   2
            response.write 
" <v:stroke dashstyle='1 1'/>"
         case   3
            response.write 
" <v:stroke dashstyle='dash'/>"
         case   4
            response.write 
" <v:stroke dashstyle='dashDot'/>"
         case   5
            response.write 
" <v:stroke dashstyle='longDash'/>"
         case   6
            response.write 
" <v:stroke dashstyle='longDashDot'/>"
         case   7
            response.write 
" <v:stroke dashstyle='longDashDotDot'/>"
         case   else
        
end   select
        response.write 
" </v:line> " & CHR ( 13 )
        
select   case  line_code(j, 4 )
        
case   1
        
case   2
            response.write 
" <v:rect id=""_x0000_s1027"" style='position:absolute;left: " & x1 - 2 & " px;top: " & y1 - 2 & " px;width:4px;height:4px; z-index:2' fillcolor="" " & line_code(j, 1 ) & " "" strokecolor="" " & line_code(j, 1 ) & " ""/> " & CHR ( 13 )
        
case   3
            response.write 
" <v:oval id=""_x0000_s1026"" style='position:absolute;left: " & x1 - 2 & " px;top: " & y1 - 2 & " px;width:4px;height:4px;z-index:1' fillcolor="" " & line_code(j, 1 ) & " "" strokecolor="" " & line_code(j, 1 ) & " ""/> " & CHR ( 13 )
        
end   select
    
next
        
select   case  line_code(j, 4 )
        
case   1
        
case   2
            response.write 
" <v:rect id=""_x0000_s1027"" style='position:absolute;left: " & x2 - 2 & " px;top: " & y2 - 2 & " px;width:4px;height:4px; z-index:2' fillcolor="" " & line_code(j, 1 ) & " "" strokecolor="" " & line_code(j, 1 ) & " ""/> " & CHR ( 13 )
        
case   3
            response.write 
" <v:oval id=""_x0000_s1026"" style='position:absolute;left: " & x2 - 2 & " px;top: " & y2 - 2 & " px;width:4px;height:4px;z-index:1' fillcolor="" " & line_code(j, 1 ) & " "" strokecolor="" " & line_code(j, 1 ) & " ""/> " & CHR ( 13 )
        
end   select
next
    
for  i = 1   to  total_no
    response.write 
" <v:line id='_x0000_s1027' alt='' style='position:absolute;left:0;text-align:left;top:0;flip:y;z-index:-1' from=' " & table_x + left_width + all_width * (i - 1 ) / total_no & " px, " & table_y + all_height & " px' to=' " & table_x + left_width + all_width * (i - 1 ) / total_no & " px, " & table_y + all_height + 15 & " px'/>"
    response.write  " "
    response.write  " <v:shape id='_x0000_s1025' type='#_x0000_t202' alt='' 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:textbox inset='0px,0px,0px,0px'><table cellspacing='3' cellpadding='0' width='100%' height='100%'><tr><td align='left'> " & total(i, 0 ) & " </td></tr></table></v:textbox></v:shape>"
next

tb_height
= 30
response.write 
" <v:rect id='_x0000_s1025' style='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'/>"
for  i = 1   to  line_no
    response.write 
" <v:shape id='_x0000_s1025' type='#_x0000_t202' alt='' 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:textbox inset='0px,0px,0px,0px'><table cellspacing='3' cellpadding='0' width='100%' height='100%'><tr><td align='left'> " & line_code(i, 5 ) & " </td></tr></table></v:textbox></v:shape>"
    response.write  " <v:rect id='_x0000_s1040' alt='' 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:1' fillcolor=' " & line_code(i, 1 ) & " '><v:fill color2=' " & line_code(i, 1 ) & " ' rotate='t' focus='100%' type='gradient'/></v:rect>"
next

end function
%
>

< %
function  table3(total,table_x,table_y,all_width,all_height,table_type)
' 参数含义(传递的数组,横坐标,纵坐标,图表的宽度,图表的高度,图表的类型)
'
纯ASP代码生成图表函数3——饼图

tb_height
= 30

dim  tb_color( 7 , 2 )
tb_color(
1 , 1 ) = " #d1ffd1"
tb_color( 2 , 1 ) = " #ffbbbb"
tb_color( 3 , 1 ) = " #ffe3bb"
tb_color( 4 , 1 ) = " #cff4f3"
tb_color( 5 , 1 ) = " #d9d9e5"
tb_color( 6 , 1 ) = " #ffc7ab"
tb_color( 7 , 1 ) = " #ecffb7"

tb_color( 1 , 2 ) = " #00ff00"
tb_color( 2 , 2 ) = " #ff0000"
tb_color( 3 , 2 ) = " #ff9900"
tb_color( 4 , 2 ) = " #33cccc"
tb_color( 5 , 2 ) = " #666699"
tb_color( 6 , 2 ) = " #993300"
tb_color( 7 , 2 ) = " #99cc00"

total_no = ubound (total, 1 )
totalpie
= 0
for  i = 1   to  total_no
    totalpie
= totalpie + total(i, 1 )
next

PreAngle
= 0
for  i = 1   to  total_no
    response.write 
" <v:shape id='_x0000_s1025' alt='' style='position:absolute;left: " & table_x & " px;top: " & table_y & " px;width: " & all_width & " px;height: " & all_height & " px;z-index:1' coordsize='1500,1400' o:spt='100' adj='0,,0' path='m750,700ae750,700,750,700, " & int ( 23592960 * PreAngle) & " , " & int ( 23592960 * total(i, 1 ) / totalpie) & " xe' fillcolor=' " & tb_color(i, 1 ) & " ' strokecolor='#FFFFFF'><v:fill color2=' " & tb_color(i, 2 ) & " ' rotate='t' focus='100%' type='gradient'/><v:stroke joinstyle='round'/><v:formulas/><v:path o:connecttype='segments'/></v:shape> " & CHr ( 13 )
    PreAngle
= PreAngle + total(i, 1 ) / totalpie
next

if  table_type = " A "   then
    response.write 
" <v:rect id='_x0000_s1025' style='position:absolute;left: " & table_x + all_width + 20 & " px;top: " & table_y + 20 & " px;width:100px;height: " & total_no * tb_height + 20 & " px;z-index:1'/>"
for  i = 1   to  total_no
    response.write 
" <v:shape id='_x0000_s1025' type='#_x0000_t202' alt='' style='position:absolute;left: " & table_x + all_width + 25 & " px;top: " & table_y + 30 + (i - 1 ) * tb_height & " px;width:60px;height: " & tb_height & " px;z-index:1'>"
    response.write  " <v:textbox inset='0px,0px,0px,0px'><table cellspacing='3' cellpadding='0' width='100%' height='100%'><tr><td align='left'> " & total(i, 0 ) & " </td></tr></table></v:textbox></v:shape>"
    response.write  " <v:rect id='_x0000_s1040' alt='' style='position:absolute;left: " & table_x + all_width + 80 & " px;top: " & table_y + 30 + (i - 1 ) * tb_height + 3 & " px;width:30px;height:20px;z-index:1' fillcolor=' " & tb_color(i, 1 ) & " '><v:fill color2=' " & tb_color(i, 2 ) & " ' rotate='t' focus='100%' type='gradient'/></v:rect>"
' 显示比例数
'
    response.write "<v:shape id='_x0000_s1025' type='#_x0000_t202' alt='' style='position:absolute;left:"&table_x+all_width+110&"px;top:"&table_y+30+(i-1)*tb_height&"px;width:60px;height:"&tb_height&"px;z-index:1'>"
'
    response.write "<v:textbox inset='0px,0px,0px,0px'><table cellspacing='3' cellpadding='0' width='100%' height='100%'><tr><td align='left'>"&formatnumber(total(i,1)*100/totalpie,2,-1)&"%</td></tr></table></v:textbox></v:shape>"
next
end   if

if  table_type = " B "   then
pie
= 3.14159265358979
TempPie
= 0
for  i = 1   to  total_no
    TempAngle
= pie * 2 * (total(i, 1 ) / (TotalPie * 2 ) + TempPie)
    x1
= table_x + all_width / 2 + cos (TempAngle) * all_width * 3 / 8
    y1
= table_y + all_height / 2 - sin (TempAngle) * all_height * 3 / 8
    x2
= table_x + all_width / 2 + cos (TempAngle) * all_width * 3 / 4
    y2
= table_y + all_height / 2 - sin (TempAngle) * all_height * 3 / 4
    
if  x2 > table_x + all_width / 2   then
        x3
= x2 + 20
        x4
= x3
    
else
        x3
= x2 - 20
        x4
= x3 - 100
    
end   if
    response.write 
" <v:oval id='_x0000_s1027' style='position:absolute;left: " & x1 - 2 & " px;top: " & y1 - 2 & " px;width:4px;height:4px; z-index:2' fillcolor='#111111' strokecolor='#111111'/> " & CHR ( 13 )
    response.write 
" <v:line id='_x0000_s1025' alt='' style='position:absolute;left:0;text-align:left;top:0;z-index:1' from=' " & x1 & " px, " & y1 & " px' to=' " & x2 & " px, " & y2 & " px' coordsize='21600,21600' strokecolor='#111111' strokeweight='1px'></v:line>"
    response.write  " <v:line id='_x0000_s1025' alt='' style='position:absolute;left:0;text-align:left;top:0;z-index:1' from=' " & x2 & " px, " & y2 & " px' to=' " & x3 & " px, " & y2 & " px' coordsize='21600,21600' strokecolor='#111111' strokeweight='1px'></v:line>"
    response.write  " <v:shape id='_x0000_s1025' type='#_x0000_t202' alt='' style='position:absolute;left: " & x4 & " px;top: " & y2 - 10 & " px;width:100px;height:20px;z-index:1'>"
    response.write  " <v:textbox inset='0px,0px,0px,0px'><table cellspacing='3' cellpadding='0' width='100%' height='100%'><tr><td align='left'> " & total(i, 0 ) & "   " & formatnumber (total(i, 1 ) * 100 / totalpie, 2 , - 1 ) & " %</td></tr></table></v:textbox></v:shape>"
    TempPie = TempPie + total(i, 1 ) / TotalPie
next
end   if

end function
%
>
纯ASP代码生成图表函数1——柱状图调用示例
< %
dim  total( 7 , 2 )
total(
1 , 1 ) = 200
total(
2 , 1 ) = 800
total(
3 , 1 ) = 1000
total(
4 , 1 ) = 600
total(
5 , 1 ) = 1222
total(
6 , 1 ) = 3213
total(
7 , 1 ) = 8

total(
1 , 2 ) = " 中国经营报"
total( 2 , 2 ) = " 招聘网"
total( 3 , 2 ) = " 51Job"
total( 4 , 2 ) = " 新民晚报"
total( 5 , 2 ) = " 新闻晚报"
total( 6 , 2 ) = " 南方周末"
total( 7 , 2 ) = " 羊城晚报"

total_no = 7
%
>
< html xmlns:v = " urn:schemas-microsoft-com:vml "  xmlns:o = " urn:schemas-microsoft-com:office:office " >
< ! -- [ if  !mso] >
< style >
v
\ : *          { behavior: url(#default#VML) }
o
\ : *          { behavior: url(#default#VML) }
.shape       { behavior: url(#default#VML) }
</ style >
< ![endif] -->
< head >
< meta http - equiv = " Content-Type "  content = " text/html; charset=gb2312 " >
< title ></ title >
< style >
TD {    FONT
- SIZE: 9pt}
</ style ></ head >
< body topmargin = 5  leftmargin = 0  scroll = AUTO >
< % call  table1(total, 200 , 20 , 20 , 30 , 400 , 200 , " A " )% >
< % call  table1(total, 200 , 320 , 20 , 20 , 400 , 250 , " B " )% >
</ body >
</ html >

你可能感兴趣的:(ASP生成柱型体,折线图,饼图源代码)