将json转换为包含名称和子值以输入D3

时间:2016-07-18 10:50:40

标签: json d3.js

我试图让json转换自:

{
"Devices": [
    {
        "Udid": "7a2b0e6c928f2321a75e423ba23ae93d",
        "SerialNumber": "RF1D232ZLEE",
        "MacAddress": "40F232726FC8",
        "Imei": "3576342323280150",
        "EasId": "SEC1BC252327E92B",
        "AssetNumber": "7a2b0e23223928f2321a75e423ba23ae93d",
        "DeviceFriendlyName": "gel1 Android Android 5.0.1 ZLEE ",
        "LocationGroupId": {
            "Id": {
                "Value": 19529
            },
            "Name": "Group Express"
        },
        "LocationGroupName": "Group Express",
        "UserId": {
            "Name": ""
        },
        "UserName": "",
        "UserEmailAddress": "",
        "Ownership": "S",
        "PlatformId": {
            "Id": {
                "Value": 5
            },
            "Name": "Android"
        },
        "Platform": "Android",
        "ModelId": {
            "Id": {
                "Value": 5
            },
            "Name": "samsung GT-I9505"
        },
        "Model": "samsung GT-I9505",
        "OperatingSystem": "5.0.1",
        "PhoneNumber": "+447881867010",
        "LastSeen": "2016-07-06T14:01:03.590",
        "EnrollmentStatus": "Unenrolled",
        "ComplianceStatus": "NotAvailable",
        "CompromisedStatus": false,
        "LastEnrolledOn": "2016-06-15T16:01:38.763",
        "LastComplianceCheckOn": "0001-01-01T00:00:00.000",
        "LastCompromisedCheckOn": "2016-07-06T13:58:26.183",
        "IsSupervised": false,
        "DeviceMCC": {
            "SIMMCC": "234",
            "CurrentMCC": "234"
        },
        "AcLineStatus": 0,
        "VirtualMemory": 0,
        "Id": {
            "Value": 23459
        }
    },
    {
        "Udid": "c5f94db71d406dae7f881d3edf059e",
        "SerialNumber": "",
        "MacAddress": "000C300F9108",
        "Imei": "",
        "EasId": "D80DB85EC411C8E9B28BC292A603F05C2C0EEEC8",
        "AssetNumber": "c592f93db71d406dae7f881d3edf059e",
        "DeviceFriendlyName": "user Windows 10 WinRT 10.0.10240  ",
        "LocationGroupId": {
            "Id": {
                "Value": 18498
            },
            "Name": "Business Solutions"
        },
        "LocationGroupName": "Business Solutions",
        "UserId": {
            "Name": ""
        },
        "UserName": "",
        "UserEmailAddress": "",
        "Ownership": "C",
        "PlatformId": {
            "Id": {
                "Value": 12
            },
            "Name": "WinRT"
        },
        "Platform": "WinRT",
        "ModelId": {
            "Id": {
                "Value": 50
            },
            "Name": "Windows 10"
        },
        "Model": "Windows 10",
        "OperatingSystem": "10.0.10240",
        "PhoneNumber": "",
        "LastSeen": "2016-05-03T10:54:07.650",
        "EnrollmentStatus": "Unenrolled",
        "ComplianceStatus": "NotAvailable",
        "CompromisedStatus": false,
        "LastEnrolledOn": "2016-01-29T16:41:57.760",
        "LastComplianceCheckOn": "0001-01-01T00:00:00.000",
        "LastCompromisedCheckOn": "0001-01-01T00:00:00.000",
        "IsSupervised": false,
        "DeviceMCC": {
            "SIMMCC": "",
            "CurrentMCC": ""
        },
        "AcLineStatus": 0,
        "VirtualMemory": 0,
        "Id": {
            "Value": 23545
        }
    }
],
"Page": 0,
"PageSize": 500,
"Total": 13}

类似于:

{"name": "Devices",
  "children": [    
    {"name":"Udid", "size":"7f0dsda63274692ea4f0b66fec67a020158"},
    {"name":"SerialNumber", "size":"P988KJSPQF938"},
    {"name":"MacAddress", "size":"1HJUSUD031C4"},
    {"name":"Imei", "size":""},
    {"name":"EasId", "size":"ApKJSPQF193"},
    {"name":"AssetNumber", "size":"7f0cda636b3305fea4f0b66fec9997267a020158"},
    {"name":"DeviceFriendlyName", "size":"TMcKenz iPad iOS 7.1.4 F193 "},
    {"name":"LocationGroupId", 
       "children": [ 
         {"name":"Id","size":7488},
         {"name":"Name","size":"MCM"}
                   ]
     },
    {"name":"UserId", 
        "children": [ 
          {"name":"Id","size":6418},
          {"name":"Name","size":"Tom McKenz"}
              ]
     },
     {"name":"UserName", "size":"TMcKenz"},
     {"name":"UserEmailAddress", "size":"TMcKenz@awaw.com"}
  ]
}

不确定这里的最佳做法是什么:是否可以使用D3.nest或者您是否需要遍历所有节点并更改为' name'和孩子们'相应

0 个答案:

没有答案