什么库或组件可以在ASP.NET Web应用程序中创建漂亮的图表

时间:2011-07-04 20:48:23

标签: c# asp.net graph diagramming

我有一个ASP.NET / C#Web应用程序,我想添加一些功能,以Edward Tufte的方式从业务数据生成非常漂亮的图表。

更具体地说,它是框图,其中框的大小和形状将与所表示的业务对象的某个值成比例,着色也具有商业含义,等等。

完全自定义(不是经典的图表设计)具有复杂的概念,例如网络(必须显示对象之间的关系,例如它们在分发网络中的位置)和容器,这些容器的大小正确,具体取决于它们内部的大小。

我猜这个图表将在服务器端生成为图像文件,然后显示在页面中。

我可以用什么库/组件来回答这种需求?

2 个答案:

答案 0 :(得分:0)

答案 1 :(得分:0)

  • 您可以使用普通的canvas在客户端执行此操作。

    • 查看Processing.js。您可以绘制箭头like this

      // Renders a vector object 'v' as an arrow and a location 'loc'
      void drawVector(Vector3D v, Vector3D loc, float scayl) {
        pushMatrix();
        float arrowsize = 4;
        // Translate to location to render vector
        translate(loc.x,loc.y);
        stroke(255);
        // Call vector heading function to get direction (note that pointing up is a heading of 0) and rotate
        rotate(v.heading2D());
        // Calculate length of vector & scale it to be bigger or smaller if necessary
        float len = v.magnitude()*scayl;
        // Draw three lines to make an arrow (draw pointing up since we've rotate to the proper direction)
        line(0,0,len,0);
        line(len,0,len-arrowsize,+arrowsize/2);
        line(len,0,len-arrowsize,-arrowsize/2);
        popMatrix();
      }
      
  • 可能不符合您的确切要求,但Google Charts是一种通过构建网址生成图表的快捷而优雅的方法。