bgrsquared / d3-react-squared

Lightweight event system for (d3) charts and other components for ReactJS.
http://bgrsquared.com/DR2/
MIT License
178 stars 13 forks source link

--> Demos, Examples, Playground, Docu

--> d3-react-squared-c3-loader

--> New live example

--> New blog post, based on live example

Notes

--> v0.6.0 and later require d3 v4!

--> v0.3.0 and later require React 0.14!

c3

Documentation is still missing, sorry!

v0.3.6 and newer

Starting in 0.3.6, c3 charts are loaded using d3-react-squared-c3-loader

v0.2.7 through v0.3.5:

Please note that this is still 'beta'. So far, there is no docu on the docu page. --> please check out the c3example.js in the source (./examples).

d3-react-squared

npm version

Feedback, ideas, PRs, etc. very welcome!

Why yet another d3-react component?

There are already some great solutions out there, combining React and D3, e.g.:

A gist with some links here

Most of these articles/code aims to combine/add d3 into the lifecycle methods to generate charts that way. Have a look at them, great ideas there.

See docu page for some details about my approach. I don't want to bore you with details here - just contact us (contacts on docu page). I am very happy to discuss ideas/concepts!

Some keywords:

We believe that especially the last bullet is helpful to teams separate concerns and have maintainable solutions. Why? The chart generating code is in its own module and the interaction designer doesn't really have to care about React (maybe he should, but that's another story...).

Details?

See also here (click on DR2 in top right navigation!)

Documentation

--> See here (click on DR2 in top right navigation!)

The documentation is still somewhat basic. Definitely check out the examples in the repo!

But hey, writing docu is sooooo time consuming...

Stand-alone example

This repo now includes a stand-alone example. Simply:

npm install

and then

npm run dev

and it should be running on localhost:8080.

Requirements

As far as I know, you shouldn't need anything fancy.

We run it in a babel/webpack/react setup, plain vanilla, so to speak (plenty of setup guides out there), and it works.

Also: we have bootstrap, no other css/sass/... (actually: we love react-bootstrap) (Note: you could, if you wanted, to use SASS to style your graphs, must require the files where and when needed; you know how.).

Thanks

Huge thanks to all the people involved in providing awesome tools such as:

and many others...

Some screenshots

New Docu-Page

DocuPage

Playground (--> See here) to learn about parameters:

Playground