c#曲线图的代码:
Graphics objG;//建立画板对象 
Bitmap objB = new Bitmap(600,300);//建立位图对象,背景大小 
objG = Graphics.FromImage(objB);//根据位图对象建立画板对象 
objG.Clear(Color.White);//设置画板对象的背景色for(int j = 0;j<100;j++)//画Y轴
{
    objG.FillRectangle(Brushes.Blue ,20,200-j,1,1);
    if((200-j)%20 == 0)
    {
       objG.FillRectangle(Brushes.Blue ,20,200-j,5,1);
    }
}for(int j = 0;j<400;j++)//画X轴
{
    objG.FillRectangle(Brushes.Blue ,20+j,200,1,1);
    if((j-20)%30 == 0)
    {
objG.FillRectangle(Brushes.Blue ,20+j,200,1,5);
    }
}objG.FillRectangle(Brushes.Blue ,40,180,3,3);//数据点1
objG.FillRectangle(Brushes.Blue ,70,140,3,3);//数据点2
objG.FillRectangle(Brushes.Blue ,100,160,3,3);//数据点3
objG.DrawLine(new Pen(Color.Black),40,180,70,140);//点与点之间的连线
objG.DrawLine(new Pen(Color.Black),70,140,100,160);//点与点之间的连线objB.Save(Response.OutputStream,ImageFormat.Gif);//该位图对象以"GIF"格式输出运行之后会在把这个曲线图用gif格式显示在网页上,我现在想让鼠标悬停在曲线图上的那3个点上然后在鼠标旁把该点的数值显示出来。有办法么?不行的话还有别的方法画这个曲线图么?
我是个菜鸟,第一次做曲线图,埃~~~~~郁闷死了。

解决方案 »

  1.   

    www.wave12.com图表组件wsChart4.2(DLL版)
    图表组件wsChart1.0(OCX版)
      

  2.   

    估计这个比较难,因为你是在画布上面一个个的画出线条。注意,你只是画了出来!但是你现在想实现在鼠标放在点上,显示信息。首先你就需要跟踪鼠标,然后判断鼠标是不是在你需要的点上,如果是那么就可以显示这个值。
    不过想想也没有什么,你可以自定一个类吗,然后继承Graphics,覆盖它的鼠标信息,判断就可以了。
      

  3.   

    不知道我是不是理解你的意思了!
    我觉得只是C#不能实现啊!必需要客户端程序啊!比如javascript!网页只能检测鼠标是否在一个图片上,不可能检测在图片的某位置的!用客户端程序要吧那些点的坐标值都穿过来!然后计算鼠标在页面中的位置和图片上点的相对位置是否重合!!
      

  4.   

    楼上说得没错。
    服务器端生成的时候将几个点的坐标记录下来。
    在客户端用JavaScript获取鼠标位置。
    进行比较。有点麻烦。
      

  5.   

    确实很难实现,但是必须得实现呀。我现在用DataGrid把这个曲线图作出来了,可是表格里的单元格最小的时候我觉得还是很大,不知道能不能再小点。