【问题标题】:Create Graphs in LINQPad在 LINQPad 中创建图形
【发布时间】:2013-09-27 22:13:56
【问题描述】:

目前我想要实现的是在 LINQPad 中从 SQL 数据源创建一个图形。

我相信这是可以做到的,但是我不能 100% 确定如何做到这一点。

有人对执行此操作的方法有任何想法吗? (即使它包括使用 NuGet 包,我也不介意)

【问题讨论】:

    标签: sql linq graph linqpad graph-visualization


    【解决方案1】:

    Linqpad 5.31 带有内部图表扩展。

    var customers = new[]
    {
        new { Name = "John", TotalOrders = 100 },
        new { Name = "Mary", TotalOrders = 130 },
        new { Name = "Sara", TotalOrders = 140 },
        new { Name = "Paul", TotalOrders = 125 },
    };
    
    customers.Chart (c => c.Name, c => c.TotalOrders).Dump(); 
    

    有关更多示例,请单击 LINQPad 的示例选项卡(左下角)、LINQPad 教程和参考 > 便签本功能 > 使用 Chart() 绘制图表

    【讨论】:

      【解决方案2】:

      编辑:图表现在是 LINQPad 的内置功能。见this answer

      是的,您可以使用任何 NuGet 图表库或System.Windows.Forms.DataVisualization.Charting 中的内置 Windows 窗体库。只需在创建图表控件后调用 Dump 即可,如this example

      另一种选择是使用 Google Chart API:

      Util.Image ("http://chart.apis.google.com/chart?cht=p3&chd=s:Uf9a&chs=350x140&chl=January|February|March|April").Dump();
      

      结果如下:

      【讨论】:

      • 你能想出一种方法来用 LINQ 返回的数据创建一个折线图吗?即作为扩展方法。我尝试过修改和更改示例代码,但并没有取得太大的成功。我能够在图表上获得一组数据,但是当我想将另一组数据添加到同一个图表时,我遇到了问题。
      • @Joe Albahari, Dumping System.Windows.Forms.DataVisualization.Charting 不再在 v5.08.01 中工作,而不是显示图表它正在转储图表对象而是。
      • 不幸的是,自 2012 年以来,静态 Google Image Chart API 已被弃用且未得到积极维护。对于最常见的情况,IEnumerable 扩展或 Util.Chart 会很酷。顺便说一句,感谢条形图(又名“显示图表”)渲染选项 - 它完成了第一次可视化的工作,并且在 80% 的情况下已经足够好了。
      【解决方案3】:

      LINQPad 输出窗口是基于 HTML 的,因此您可以使用 Util.RawHTML("<div>your HTML here...</div>").Dump();,尽管以这种方式包含 HTML 图表会非常乏味。

      提出这个问题并寻求答案的最佳地点是LINQPad Forum

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2023-04-09
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2019-06-07
        相关资源
        最近更新 更多