我打算编写一个基于Web的图表编辑器。如果是桌面版,我会选择Eclipse GEF作为构建它的平台。
对于网络,我正在考虑d3.js,但我有点担心,我在d3上遇到的几乎所有示例和文章都是用于可视化数据,而不是真正用于交互式点击,选择并连接,拖放式使用。
我可能仍然可以强制使用d3来制作这个编辑器,但后来我想知道d3是否会以一种让你不断努力维持编辑器的方式发展。
所以我对社区的问题是:从软件架构的角度来看,d3是构建自由格式图编辑器的不错选择吗?您能否告诉我API,d3内部代码,文章或示例,以证明这样的编辑可以长期站立?
答案 0 :(得分:11)
如果问题是“D3可以帮助我创建基于Web的图编辑器中涉及的SVG交互吗?”,那么答案就是“是的,一点点”。但是你正在开展一个非常大的项目,而D3只能帮助你完成它的某些部分。
D3可以提供帮助的领域示例:
总的来说,我认为你可能正在寻找一个更高级别的框架,除非你准备好控制D3所做的几乎所有方面。
你说得对,D3提供的大部分辅助方法都是针对数据可视化的,但它确实提供了一个超过SVG的薄层,可以对你描述的通用项目有所帮助。
关于D3是否会朝着可能使其在未来适合该项目 的方向发展:只有@mbostock可以肯定地知道,但考虑到API的设计可以让它用于SVG或HTML节点操作,我认为可以说它将保持相当低的水平。你之前可能已经看过this example了,但它很好地说明了图书馆超越图表的能力。的曲线图。
答案 1 :(得分:2)
D3“只是”一个框架,因此可以用于几乎任何东西。然而它确实听起来像是不适合你想要做的事情。特别是,它听起来并不像D3的主要概念 - 一切都是由数据驱动 - 在这里是有益的。