{"url":"https://api.github.com/gists/3305937","forks_url":"https://api.github.com/gists/3305937/forks","commits_url":"https://api.github.com/gists/3305937/commits","id":"3305937","node_id":"MDQ6R2lzdDMzMDU5Mzc=","git_pull_url":"https://gist.github.com/3305937.git","git_push_url":"https://gist.github.com/3305937.git","html_url":"https://gist.github.com/mbostock/3305937","files":{".block":{"filename":".block","type":"text/plain","language":null,"raw_url":"https://gist.githubusercontent.com/mbostock/3305937/raw/703d310b399098a243a76a50bc209167e924cfd2/.block","size":17,"truncated":false,"content":"license: gpl-3.0\n","encoding":"utf-8"},"README.md":{"filename":"README.md","type":"text/markdown","language":"Markdown","raw_url":"https://gist.githubusercontent.com/mbostock/3305937/raw/50a6895c88db9fdc5c52a9076bc8d799b1e21bb7/README.md","size":283,"truncated":false,"content":"D3 2.10 adds support for [tab-separated values](http://en.wikipedia.org/wiki/Tab-separated_values) via d3.tsv. Similar to the previous d3.csv method, this makes it easy to load and parse TSV files.\n\n```javascript\nd3.tsv(\"data.tsv\", function(data) {\n  console.log(data[0].x);\n});\n```\n","encoding":"utf-8"},"data.tsv":{"filename":"data.tsv","type":"text/tab-separated-values","language":"TSV","raw_url":"https://gist.githubusercontent.com/mbostock/3305937/raw/1d2d567b9c2761edbb0dbd0a2453e808ebd37bf7/data.tsv","size":33,"truncated":false,"content":"x\ty\n5\t90\n25\t30\n45\t50\n65\t55\n85\t25\n","encoding":"utf-8"},"index.html":{"filename":"index.html","type":"text/html","language":"HTML","raw_url":"https://gist.githubusercontent.com/mbostock/3305937/raw/56a7c90ae2ae714feef24f8cc85a71b335620f03/index.html","size":1699,"truncated":false,"content":"<!DOCTYPE html>\n<meta charset=\"utf-8\">\n<style>\n\nbody {\n  font: 10px sans-serif;\n}\n\n.axis path,\n.axis line {\n  fill: none;\n  stroke: #000;\n  shape-rendering: crispEdges;\n}\n\n.point {\n  fill: steelblue;\n  stroke: #000;\n}\n\n</style>\n<body>\n<script src=\"//d3js.org/d3.v3.min.js\"></script>\n<script>\n\nvar margin = {top: 20, right: 20, bottom: 30, left: 40},\n    width = 960 - margin.left - margin.right,\n    height = 500 - margin.top - margin.bottom;\n\nvar x = d3.scale.linear()\n    .range([0, width]);\n\nvar y = d3.scale.linear()\n    .range([height, 0]);\n\nvar svg = d3.select(\"body\").append(\"svg\")\n    .attr(\"width\", width + margin.left + margin.right)\n    .attr(\"height\", height + margin.top + margin.bottom)\n  .append(\"g\")\n    .attr(\"transform\", \"translate(\" + margin.left + \",\" + margin.top + \")\");\n\nd3.tsv(\"data.tsv\", function(error, data) {\n  if (error) throw error;\n\n  // Coerce the data to numbers.\n  data.forEach(function(d) {\n    d.x = +d.x;\n    d.y = +d.y;\n  });\n\n  // Compute the scales’ domains.\n  x.domain(d3.extent(data, function(d) { return d.x; })).nice();\n  y.domain(d3.extent(data, function(d) { return d.y; })).nice();\n\n  // Add the x-axis.\n  svg.append(\"g\")\n      .attr(\"class\", \"x axis\")\n      .attr(\"transform\", \"translate(0,\" + height + \")\")\n      .call(d3.svg.axis().scale(x).orient(\"bottom\"));\n\n  // Add the y-axis.\n  svg.append(\"g\")\n      .attr(\"class\", \"y axis\")\n      .call(d3.svg.axis().scale(y).orient(\"left\"));\n\n  // Add the points!\n  svg.selectAll(\".point\")\n      .data(data)\n    .enter().append(\"circle\")\n      .attr(\"class\", \"point\")\n      .attr(\"r\", 4.5)\n      .attr(\"cx\", function(d) { return x(d.x); })\n      .attr(\"cy\", function(d) { return y(d.y); });\n});\n\n</script>\n","encoding":"utf-8"},"thumbnail.png":{"filename":"thumbnail.png","type":"image/png","language":null,"raw_url":"https://gist.githubusercontent.com/mbostock/3305937/raw/c1f5d995e5090a7029ba31b01a7f7742afd2622d/thumbnail.png","size":2143,"truncated":false,"content":"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\npW0ps/8WYADNZLxCW4Q44AAAAABJRU5ErkJggg==\n","encoding":"base64"}},"public":true,"created_at":"2012-08-09T17:06:48Z","updated_at":"2025-07-28T19:51:19Z","description":"d3.tsv","comments":4,"user":null,"comments_enabled":true,"comments_url":"https://api.github.com/gists/3305937/comments","owner":{"login":"mbostock","id":230541,"node_id":"MDQ6VXNlcjIzMDU0MQ==","avatar_url":"https://avatars.githubusercontent.com/u/230541?v=4","gravatar_id":"","url":"https://api.github.com/users/mbostock","html_url":"https://github.com/mbostock","followers_url":"https://api.github.com/users/mbostock/followers","following_url":"https://api.github.com/users/mbostock/following{/other_user}","gists_url":"https://api.github.com/users/mbostock/gists{/gist_id}","starred_url":"https://api.github.com/users/mbostock/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mbostock/subscriptions","organizations_url":"https://api.github.com/users/mbostock/orgs","repos_url":"https://api.github.com/users/mbostock/repos","events_url":"https://api.github.com/users/mbostock/events{/privacy}","received_events_url":"https://api.github.com/users/mbostock/received_events","type":"User","user_view_type":"public","site_admin":false},"forks":[],"history":[{"user":{"login":"mbostock","id":230541,"node_id":"MDQ6VXNlcjIzMDU0MQ==","avatar_url":"https://avatars.githubusercontent.com/u/230541?v=4","gravatar_id":"","url":"https://api.github.com/users/mbostock","html_url":"https://github.com/mbostock","followers_url":"https://api.github.com/users/mbostock/followers","following_url":"https://api.github.com/users/mbostock/following{/other_user}","gists_url":"https://api.github.com/users/mbostock/gists{/gist_id}","starred_url":"https://api.github.com/users/mbostock/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mbostock/subscriptions","organizations_url":"https://api.github.com/users/mbostock/orgs","repos_url":"https://api.github.com/users/mbostock/repos","events_url":"https://api.github.com/users/mbostock/events{/privacy}","received_events_url":"https://api.github.com/users/mbostock/received_events","type":"User","user_view_type":"public","site_admin":false},"version":"a5be7c5fd55c4fa0ca8a400cb68d658a40989966","committed_at":"2016-02-09T01:30:40Z","change_status":{"total":1,"additions":1,"deletions":0},"url":"https://api.github.com/gists/3305937/a5be7c5fd55c4fa0ca8a400cb68d658a40989966"},{"user":{"login":"mbostock","id":230541,"node_id":"MDQ6VXNlcjIzMDU0MQ==","avatar_url":"https://avatars.githubusercontent.com/u/230541?v=4","gravatar_id":"","url":"https://api.github.com/users/mbostock","html_url":"https://github.com/mbostock","followers_url":"https://api.github.com/users/mbostock/followers","following_url":"https://api.github.com/users/mbostock/following{/other_user}","gists_url":"https://api.github.com/users/mbostock/gists{/gist_id}","starred_url":"https://api.github.com/users/mbostock/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mbostock/subscriptions","organizations_url":"https://api.github.com/users/mbostock/orgs","repos_url":"https://api.github.com/users/mbostock/repos","events_url":"https://api.github.com/users/mbostock/events{/privacy}","received_events_url":"https://api.github.com/users/mbostock/received_events","type":"User","user_view_type":"public","site_admin":false},"version":"bb0c8b8e4e658873da61a4d06a1a24702b78ece5","committed_at":"2015-10-31T00:56:22Z","change_status":{"total":2,"additions":1,"deletions":1},"url":"https://api.github.com/gists/3305937/bb0c8b8e4e658873da61a4d06a1a24702b78ece5"},{"user":{"login":"mbostock","id":230541,"node_id":"MDQ6VXNlcjIzMDU0MQ==","avatar_url":"https://avatars.githubusercontent.com/u/230541?v=4","gravatar_id":"","url":"https://api.github.com/users/mbostock","html_url":"https://github.com/mbostock","followers_url":"https://api.github.com/users/mbostock/followers","following_url":"https://api.github.com/users/mbostock/following{/other_user}","gists_url":"https://api.github.com/users/mbostock/gists{/gist_id}","starred_url":"https://api.github.com/users/mbostock/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mbostock/subscriptions","organizations_url":"https://api.github.com/users/mbostock/orgs","repos_url":"https://api.github.com/users/mbostock/repos","events_url":"https://api.github.com/users/mbostock/events{/privacy}","received_events_url":"https://api.github.com/users/mbostock/received_events","type":"User","user_view_type":"public","site_admin":false},"version":"630c8947885128a215e409742f4ab9aed570b58d","committed_at":"2015-06-11T19:36:49Z","change_status":{"total":2,"additions":1,"deletions":1},"url":"https://api.github.com/gists/3305937/630c8947885128a215e409742f4ab9aed570b58d"},{"user":{"login":"mbostock","id":230541,"node_id":"MDQ6VXNlcjIzMDU0MQ==","avatar_url":"https://avatars.githubusercontent.com/u/230541?v=4","gravatar_id":"","url":"https://api.github.com/users/mbostock","html_url":"https://github.com/mbostock","followers_url":"https://api.github.com/users/mbostock/followers","following_url":"https://api.github.com/users/mbostock/following{/other_user}","gists_url":"https://api.github.com/users/mbostock/gists{/gist_id}","starred_url":"https://api.github.com/users/mbostock/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mbostock/subscriptions","organizations_url":"https://api.github.com/users/mbostock/orgs","repos_url":"https://api.github.com/users/mbostock/repos","events_url":"https://api.github.com/users/mbostock/events{/privacy}","received_events_url":"https://api.github.com/users/mbostock/received_events","type":"User","user_view_type":"public","site_admin":false},"version":"1a0fd16b1495354d3ee4e408f07bb45386b621e1","committed_at":"2015-06-11T17:01:43Z","change_status":{"total":10,"additions":6,"deletions":4},"url":"https://api.github.com/gists/3305937/1a0fd16b1495354d3ee4e408f07bb45386b621e1"},{"user":{"login":"mbostock","id":230541,"node_id":"MDQ6VXNlcjIzMDU0MQ==","avatar_url":"https://avatars.githubusercontent.com/u/230541?v=4","gravatar_id":"","url":"https://api.github.com/users/mbostock","html_url":"https://github.com/mbostock","followers_url":"https://api.github.com/users/mbostock/followers","following_url":"https://api.github.com/users/mbostock/following{/other_user}","gists_url":"https://api.github.com/users/mbostock/gists{/gist_id}","starred_url":"https://api.github.com/users/mbostock/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mbostock/subscriptions","organizations_url":"https://api.github.com/users/mbostock/orgs","repos_url":"https://api.github.com/users/mbostock/repos","events_url":"https://api.github.com/users/mbostock/events{/privacy}","received_events_url":"https://api.github.com/users/mbostock/received_events","type":"User","user_view_type":"public","site_admin":false},"version":"4eaa7370f03fd3b07ca3de6b4a83cef64591ad4f","committed_at":"2012-10-12T03:56:17Z","change_status":{"total":0,"additions":0,"deletions":0},"url":"https://api.github.com/gists/3305937/4eaa7370f03fd3b07ca3de6b4a83cef64591ad4f"},{"user":{"login":"mbostock","id":230541,"node_id":"MDQ6VXNlcjIzMDU0MQ==","avatar_url":"https://avatars.githubusercontent.com/u/230541?v=4","gravatar_id":"","url":"https://api.github.com/users/mbostock","html_url":"https://github.com/mbostock","followers_url":"https://api.github.com/users/mbostock/followers","following_url":"https://api.github.com/users/mbostock/following{/other_user}","gists_url":"https://api.github.com/users/mbostock/gists{/gist_id}","starred_url":"https://api.github.com/users/mbostock/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mbostock/subscriptions","organizations_url":"https://api.github.com/users/mbostock/orgs","repos_url":"https://api.github.com/users/mbostock/repos","events_url":"https://api.github.com/users/mbostock/events{/privacy}","received_events_url":"https://api.github.com/users/mbostock/received_events","type":"User","user_view_type":"public","site_admin":false},"version":"5da9b7611e53e3cb3ce0b38ae659d92f410d7655","committed_at":"2012-08-10T03:23:15Z","change_status":{"total":4,"additions":2,"deletions":2},"url":"https://api.github.com/gists/3305937/5da9b7611e53e3cb3ce0b38ae659d92f410d7655"},{"user":{"login":"mbostock","id":230541,"node_id":"MDQ6VXNlcjIzMDU0MQ==","avatar_url":"https://avatars.githubusercontent.com/u/230541?v=4","gravatar_id":"","url":"https://api.github.com/users/mbostock","html_url":"https://github.com/mbostock","followers_url":"https://api.github.com/users/mbostock/followers","following_url":"https://api.github.com/users/mbostock/following{/other_user}","gists_url":"https://api.github.com/users/mbostock/gists{/gist_id}","starred_url":"https://api.github.com/users/mbostock/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mbostock/subscriptions","organizations_url":"https://api.github.com/users/mbostock/orgs","repos_url":"https://api.github.com/users/mbostock/repos","events_url":"https://api.github.com/users/mbostock/events{/privacy}","received_events_url":"https://api.github.com/users/mbostock/received_events","type":"User","user_view_type":"public","site_admin":false},"version":"f24bbfd30f60730a59e004c6145a663f6703a9ff","committed_at":"2012-08-09T17:06:48Z","change_status":{"total":87,"additions":87,"deletions":0},"url":"https://api.github.com/gists/3305937/f24bbfd30f60730a59e004c6145a663f6703a9ff"}],"truncated":false}