Browse files

Add depreciated notice and link to C2.

  • Loading branch information...
1 parent d859433 commit 529790593ead70335710d04004478cee3575552d @lynaghk committed Mar 18, 2012
Showing with 6 additions and 0 deletions.
  1. +6 −0 README.markdown
6 README.markdown
@@ -9,6 +9,12 @@
+This library has been depreciated in favor of [C2](, a pure-Clojure data visualization library for the server and the browser.
Cljs-d3 is a ClojureScript façade for the [D3]( JavaScript DOM-manipulation library.
It transparently coerces ClojureScript data types into the appropriate JavaScript objects and provides a more Clojure-like API to some of the D3 functions:

5 comments on commit 5297905


Hey Kevin, I'm just curious - why are you deprecating cljs-d3? Is it just not practical to write a facade over d3.js, such that the extra work of re-implementing d3.js in ClojureScript makes sense? Or you just want to go in a different direction than d3.js for some reason?

I ask because I want to make some visualizations of Hidden Markov models I've trained on some data and d3.js has some code examples that would do that quite well (i.e. the chord example).. trying to see the best way of going about using it from ClojureScript.


Hi Nimalan,

The cljs-d3 project was a bit of an experiment from the start to determine how awkward it'd be to use D3 from ClojureScript.
As it turned out, the data type mismatch was too frustrating for me.
I also wanted to go in some directions that would have been difficult / impossible to do with D3 (e.g., running from within Clojure on the server and doing hierarchical mappings).

If you're doing the HMM work on the JVM, it might be worth looking into C2.
The chord layout isn't implemented in C2 yet, though, so you'd have to port it on your own.
Otherwise, you can always use D3 from ClojureScript using the standard interop features.




Ah I see, I'm new to Javascript and Clojurescript, so it doesn't look like it's worth the hassle for me to try to get D3 to work with ClojureScript. I'm thinking of either using Coffeescript with D3 or using Clojurescript with C2.

It needs to be interactive, so if I use C2, it would have to run under Clojurescript, not Clojure. It seems like that is possible, judging by the website, but please correct me if I'm mistaken.


Sounds good, thanks Kevin!

Please sign in to comment.