如何将 csv 转换为 json 并编写特定函数以使用 javascript 生成图形?
Posted
技术标签:
【中文标题】如何将 csv 转换为 json 并编写特定函数以使用 javascript 生成图形?【英文标题】:How to convert csv to json and write a specific function to generate a graph using javascript? 【发布时间】:2020-05-10 11:05:42 【问题描述】:我正在尝试通过使用关键线生成图表来可视化数据。它以 json 格式获取数据。 我正在尝试将 excel 数据转换为 json 格式。我在 excel 表中有两列。
起始节点连接节点
A - B
A - C
A - D
B-D
D-F
既然有几千行数据,我应该写一个什么样的函数才能在javascript中生成这种格式的项目:
我需要先初始化节点和链接。
const data = type: 'LinkChart',
items: [
type: 'node', id: 'ac1',
type: 'node', id: 'ac2',
type: 'link', id: 'l1', id1: 'ac1', id2: 'ac3 ,
type: 'link', id: 'l2', id1: 'ac1', id2: 'ac3'
]
;
要创建图表,我需要以这种特定方式编写它。首先,我必须初始化类型节点并为 A B C D F 编写该行。之后,我必须编写“链接”行。
我创建了一个字典,使用 python 将 csv 转换为 json [“开始”:“A”,“连接”:“B”,“开始”:“A”,“连接”:“C”,“开始”:“A”,“连接”: “D”,“开始”:“B”,“连接”:“C”,“开始”:“D”,“连接”:“F”]
如何编写一个函数来获取这些数据并将其写入项目部分以生成图表。就像首先写入所有节点然后以相同模式写入链接线的方式一样。我需要以这种格式编写 50,000 多行。此外,我如何才能唯一地初始化节点,因为 A 中的节点被初始化为节点一次,而不是数据中的 3 次。我是新手,所以我不太清楚。
【问题讨论】:
您需要提供一些关于您打算如何将输入转换为所需输出的想法,以及您尝试过的内容。例如。输入有 5 个节点和 5 行(如果 ABDF 计为 1 行,则为 3 行),但 data 示例只有 3 个节点和 2 行。 是的,我做到了...如何编写该函数?或者我应该通过和研究的任何特定主题 【参考方案1】:尝试这样的事情(使用 Python 术语。在 js 中,用数组替换列表,用对象替换 dict)
-
将电子表格保存到 csv
将 csv 读入列表(50k 行很多,但
除非您的数据值很大,否则仍应立即加载)
创建空
items
列表
使用map
函数或简单的for
循环遍历数据列表
在这个循环函数中,为每一行创建一个字典,检查items
是否有一个以当前节点为类型的字典(你也可以在字典中创建一个单独的节点列表——可能更快但也可以使用更多内存)
如果不创建字典并添加到items
为链接创建另一个字典并将其添加到items
(如果您需要避免重复链接,请先在此处检查)
在循环之后,将items
数组添加到您的data
字典中
【讨论】:
您好,谢谢,我尝试创建字典:["start": "A", "connect": "B", "start": "A", "connect": " C","start":"A","connect":"D","start":"B","connect":"C","start":"D"," connect": "F"] 我在 python 中只将 csv 转换为 json。现在我只需要以图表项目的格式编写它来生成图形......我不知道我应该如何编写该函数,例如首先定义节点然后定义链接以上是关于如何将 csv 转换为 json 并编写特定函数以使用 javascript 生成图形?的主要内容,如果未能解决你的问题,请参考以下文章
如何将 Csv 转换为 Json 并使用 Php 接收 Post?