Bring data to life with SVG, Canvas and HTML. 📊📈🎉
Перейти к файлу
Mike Bostock fd804ce47f Better force layout.
Use Barnes-Hut criterion (a fast multipole method) for approximating repulsive
charge forces between nodes. This replaces the previous approach using Floyd-
Warshall to compute the graph theoretic distance between all nodes, eliminating
O(n^3) initialization time. Additionally, the charge force is now O(n lg n) per
iteration rather than O(n^2).

Using the center of mass of the graph, apply gravitional attraction towards the
graph center (based on the layout size). This encourages the graph to stay near
the center rather than drifting away.
2011-04-19 12:39:37 -07:00
data Restructure sunburst example. 2011-03-12 22:08:17 -08:00
examples Better force layout. 2011-04-19 12:39:37 -07:00
lib Fix a bug in env-js re. insertBefore. 2011-04-09 12:03:52 -07:00
src Better force layout. 2011-04-19 12:39:37 -07:00
tests Merge branch 'box' into release 2011-04-13 23:53:59 -07:00
.gitignore Add _site to .gitignore. 2010-10-04 20:36:36 -07:00
LICENSE Fix typo in LICENSE. 2010-10-10 10:37:07 -07:00
Makefile Merge branch 'box' into release 2011-04-13 23:53:59 -07:00
README.md Merge branch 'NelsonMinar-master' 2011-03-30 09:06:50 -07:00
d3.behavior.js Fix accidental global. Thanks, @fponticelli! 2011-04-09 11:23:53 -07:00
d3.behavior.min.js Fix accidental global. Thanks, @fponticelli! 2011-04-09 11:23:53 -07:00
d3.chart.js Fix some ordering issues with transitions. 2011-04-13 23:28:04 -07:00
d3.chart.min.js Fix some ordering issues with transitions. 2011-04-13 23:28:04 -07:00
d3.csv.js Merge branch 'jasondavies-csv_newlines' 2011-03-17 17:52:55 -07:00
d3.csv.min.js Replace Google's closure compiler with UglifyJS. 2011-03-25 10:28:41 +00:00
d3.geo.js Non-contiguous cartogram example. 2011-02-23 12:33:18 -08:00
d3.geo.min.js Replace Google's closure compiler with UglifyJS. 2011-03-25 10:28:41 +00:00
d3.geom.js Use x+y objects for quadtree points. 2011-04-19 12:19:04 -07:00
d3.geom.min.js Use x+y objects for quadtree points. 2011-04-19 12:19:04 -07:00
d3.js Merge branch 'release' 2011-04-13 23:54:47 -07:00
d3.layout.js Better force layout. 2011-04-19 12:39:37 -07:00
d3.layout.min.js Better force layout. 2011-04-19 12:39:37 -07:00
d3.min.js Merge branch 'release' 2011-04-13 23:54:47 -07:00
d3.time.js Fix a couple bugs in d3.time.format. 2011-03-12 17:00:55 -08:00
d3.time.min.js Replace Google's closure compiler with UglifyJS. 2011-03-25 10:28:41 +00:00

README.md

D3

D3 is a small, free JavaScript library for manipulating HTML documents based on data. D3 can help you quickly visualize your data as HTML or SVG, handle interactivity, and incorporate smooth transitions and staged animations into your pages. You can use D3 as a visualization framework (like Protovis), or you can use it to build dynamic pages (like jQuery).

Browser Support

D3 should work on any browser, with minimal requirements such as JavaScript and the W3C DOM API. By default D3 requires the Selectors API Level 1, but you can preload Sizzle for compatibility with older browsers. Some of the included D3 examples use additional browser features, such as SVG and CSS3 Transitions. These features are not required to use D3, but are useful for visualization! D3 is not a compatibility layer. The examples should work on Firefox, Chrome (Chromium), Safari (WebKit), Opera and IE9.

Note: Chrome has strict permissions for reading files out of the local file system. Some examples use AJAX which works differently via HTTP instead of local files. For the best experience, load the D3 examples from your own machine via HTTP. Any static file web server will work; for example you can run Python's built-in server:

python -m SimpleHTTPServer 8888

Once this is running, go to: http://localhost:8888/examples/