[英]Clojurescript, JavaScript, SVG, Charts, Graphics
我正在写一个客户端应用程序。 我想使用ClojureScript。 我想生成矢量图形(图形,图表,折线图)。
我应该读些什么?
[唯一的硬性要求是ClojureScript - (1)我喜欢Clojure,并希望在Clojure中完成这个整个应用程序(2)这需要在浏览器中运行]
谢谢!
无耻插件:您可以使用C2 ,一个Clojure / ClojureScript数据可视化库。 (Github 在这里 。)核心思想与D3 ---将数据映射到DOM元素相同---但由于你拥有Clojure更强大的语义和数据结构,它最终比D3 / JavaScript更具组合性。
文档可以使用一些爱,但如果您在SVG中制作传统图表,请查看轴和刻度生成助手:
https://github.com/lynaghk/c2/blob/master/src/cljx/c2/svg.cljx
https://github.com/lynaghk/c2/blob/master/src/cljx/c2/ticks.cljx
虽然还没有正式的0.1.0版本,但我们已经在Keming Labs的几个大型网络和iOS项目中使用过它。
如果你有一个特定的可视化,你不确定如何接近,请随时ping我@lynaghk或打开一个Github问题。
这是一个老问题,但对于现在找到它的任何人来说,另一个选择是使用笔画库 ,当问题被问到时,它不可用。 Strokes是围绕d3.js的Clojure包装器。
我建议查看Vega-Lite和Vega,这是围绕着图形语法(R的流行ggplot2库背后的力量)的想法而设计的。 GG的核心思想是将数据可视化指定为数据属性如何映射到dataviz美学的声明性描述。 Vega-Lite和Vega在提供交互语法方面更进一步,它允许构建交互式数据可视化和复杂的资源管理器视图。 此外,它引发了GG的声明性质,因为Vega-Lite和Vega规范被描述为纯数据(JSON),这使得它非常符合Clojure世界的数据驱动哲学,并且铺平了与不同语言等无缝互操作的方式。
Vega-Lite或多或少是更高杠杆的日常数据科学工具,专注于提供基于非常简单规范的高杠杆和自动化。 它编译为Vega,这是一个较低级别和更强大,但Vega-Lite的自动化版本较少。 通常从Vega-Lite开始,只在需要时切换到Vega就足够了。
有关Vega&Vega-Lite的更多信息,请访问: https : //vega.github.io 。
如果您想使用Clojure或ClojureScript中的Vega-Lite或Vega,您可能希望查看一个我写的名为Oz的小而灵活的包装器库:
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.