admin 管理员组文章数量: 1086019
2024年4月27日发(作者:网页设计制作教程html代码)
画图全攻略(上)-.NET教程,研发
本文代码是基于beta2研发
越来越多的web应用需要使用图表来进行数据显示和分析。例如:投票结果显示,公司生产情况统计
图显示分析等等。利用图表来显示数据,具备直观,清楚等长处。
传统的asp技术是不支持画图表的,那么就不得不利用active x或java applets来实现这个功能。新近
出现的解决了这个问题,只要利用中关于图像显示的类,就能够画出丰富,动态的图表
(如图1)。本文将要讲述如何利用技术结合技术画条形图和饼图。
图1
首先建立一个c#的类库。
打开,建立一个名为insight_rts新的类库工程,将解决方案的名称改为insight,将
文档名改为insight_,最后打开insight_文档。其中代码如下:
/*自定义类,通过输入不同的参数,这些类能够画不同的图像 */
using system;
using ;//用于文档存取
using ;//用于数据访问
using g;//提供画gdi+图像的基本功能
using ;//提供画gdi+图像的高级功能
using g2d;//提供画高级二维,矢量图像功能
using g;//提供画gdi+图像的高级功能
namespace insight_rts
{
public class piechart
{
public piechart()
{
}
public void render(string title, string subtitle, int width, int height, dataset chartdata, stream target)
{
const int side_length = 400;
const int pie_diameter = 200;
datatable dt = [0];
//通过输入参数,取得饼图中的总基数
float sumdata = 0;
foreach(datarow dr in )
{
sumdata += le(dr[1]);
}
//产生一个image对象,并由此产生一个graphics对象
bitmap bm = new bitmap(width,height);
graphics g = age(bm);
//配置对象g的属性
ransform((le(width))/side_length,(le(height))/side_length);
ingmode = t;
nderinghint = ias;
//画布和边的设定
();
ctangle(,0,0,side_length-1,side_length-1);
//画饼图标题
ring(title,new font("tahoma",24),,new pointf(5,5));
//画饼图的图例
ring(subtitle,new font("tahoma",14),,new pointf(7,35));
//画饼图
float curangle = 0;
float totalangle = 0;
for(int i=0;i<;i++)
{
curangle = le([i][1]) / sumdata * 360;
e(new
solidbrush(rtitemcolor(i)),100,65,pie_diameter,pie_diameter,totalangle,curangle);
e(,100,65,pie_diameter,pie_diameter,totalangle,curangle);
totalangle += curangle;
}
//画图例框及其文字
ctangle(,200,300,199,99);
ring("legend",new font("tahoma",12,),,new pointf(200,300));
//画图例各项
pointf boxorigin = new pointf(210,330);
pointf textorigin = new pointf(235,326);
float percent = 0;
for(int i=0;i<;i++)
{
ctangle(new solidbrush(rtitemcolor(i)),boxorigin.x,boxorigin.y,20,10);
ctangle(,boxorigin.x,boxorigin.y,20,10);
percent = le([i][1]) / sumdata * 100;
ring([i][0].tostring() + " - " + [i][1].tostring() + " (" + ng("0") +
"%)",new font("tahoma",10),,textorigin);
版权声明:本文标题:ASP.NET画图全攻略 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://roclinux.cn/p/1714163217a667975.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论