使用D3js,如何从数据库中创建flare.json结构?

大卫

实际上,这是一个主观的问题,但是我只是想探索一些选项,以为我的D3js可视化创建flare.json输出。

目前,我具有D3js的JSON结构,如下所示:

{
    "name": "Engage Stats",
    "children":
    [
        {
            "name": "Unique Requests by Device",
            "children":
            [
                {"name": "Android", "size": 80},
                {"name": "IOS", "size": 366}
            ]
        },
        {
            "name": "Overall Requests by Device",
            "children":
            [
                {"name": "Android", "size": 2645},
                {"name": "IOS", "size": 11703}
            ]
        },

                .... etc etc

我的数据正在使用存储的proc从MS-SQL检索。显然,一种方法是简单地通读我的数据集(我应该说我在后端使用C#/。NET)并逐行构建JSON结构。主意!

我猜是因为我将flare.json格式用于更多的可视化效果,所以我可以创建一个库来完成繁重的工作-再次,只是对实现此目标的其他观点感兴趣。

大卫

只是为了完整起见,并为了结束这个问题,我最终还是采用了一种老式的方法。.我猜不是最好的方法,但是它确实起作用了!

using (SqlDataReader dr = command.ExecuteReader())
                        {
                            //  Check if we have data or not - no need to create the excel file if no data
                            if (!dr.HasRows)
                            {
                                JSONdata = null;
                                return false;
                            }

                            StringBuilder json = new StringBuilder();
                            string LastGroup = null;
                            bool Init = true;

                            json.AppendLine("{");

                            while (dr.Read())
                            {
                                if (Init)
                                {
                                    json.AppendLine("\"name\": \"" + dr["Organisation"] + "\",");
                                    json.AppendLine("\"children\": ");
                                    json.AppendLine("[");
                                }
                                if (LastGroup != dr["GroupIdentifier"].ToString())
                                {
                                    if (Init == true)
                                    {
                                        json.AppendLine("{");
                                        json.AppendLine("\"name\": \"" + dr["GroupIdentifier"] + "\",");
                                        json.AppendLine("\"children\":");
                                        json.AppendLine("[");
                                        Init = false;
                                    }
                                    else
                                    {
                                        var index = json.ToString().LastIndexOf(',');
                                        if (index >= 0)
                                        {
                                            json.Remove(index, 1);
                                        }
                                        json.AppendLine("]");
                                        json.AppendLine("},");
                                        json.AppendLine("{");
                                        json.AppendLine("\"name\": \"" + dr["GroupIdentifier"] + "\",");
                                        json.AppendLine("\"children\":");
                                        json.AppendLine("[");
                                    }
                                    LastGroup = dr["GroupIdentifier"].ToString();
                                }

                                json.AppendLine("{\"name\": \"" + dr["Measure"] + "\", \"size\": " + dr["MeasureValue"].ToString() + "},");
                            }

                            var index2 = json.ToString().LastIndexOf(',');
                            if (index2 >= 0)
                            {
                                json.Remove(index2, 1);
                            }
                            json.AppendLine("]");
                            json.AppendLine("}");

                            json.AppendLine("]");
                            json.AppendLine("}");

                            JSONdata = json.ToString();
                            return true;

                        } // end SqlRdr

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何将从 postgres 数据库中选择的数据转换为 json 或 csv 以将其与 d3js lib 一起使用?

来自分类Dev

如何修改 JSON 结构

来自分类Dev

在 d3js 中使用复杂的数据结构

来自分类Dev

从数据框创建json结构

来自分类Dev

JSON 中的结构数组与数组结构

来自分类Dev

在数据库中存储和获取json结构

来自分类Dev

使用我创建的带有可折叠树的Json的d3.js flare.json

来自分类Dev

如何从数据列表创建json结构?

来自分类Dev

如何使用python flask应用程序在d3js图表中动态加载json数据

来自分类Dev

创建POJO以匹配JSON结构

来自分类Dev

JSON / Firebase数据结构

来自分类Dev

Backbone.js JSON结构

来自分类Dev

d3js v5:使用JSON文件中的组创建SVG

来自分类Dev

如何读取嵌套的JSON结构?

来自分类Dev

如何建模所需的 json 结构

来自分类Dev

Chrome中的JSON循环结构

来自分类Dev

使用jQuery遍历JSON结构

来自分类Dev

使用javascript更改JSON结构

来自分类Dev

使用python修复JSON结构

来自分类Dev

使用javascript更改JSON结构

来自分类Dev

如何使用JSON数据创建简单的UI树结构

来自分类Dev

如何使用JSON数据创建简单的UI树结构

来自分类Dev

使用嵌套结构数组创建Coldfusion JSON结构

来自分类Dev

将JSON AngularJS结构传递给mongoDB数据库

来自分类Dev

用PHP创建json结构并更新数据

来自分类Dev

根据 Html 结构创建嵌套的 Json 数据

来自分类Dev

在node.js中循环SQL数据库时如何正确创建嵌套的json数组?

来自分类Dev

如何以JSON格式创建家谱结构

来自分类Dev

如何为树结构创建JSON模式?