Want to take your software engineering career to the next level? Join the mailing list for career tips & advice Click here

Statistics on data-lasso

Number of watchers on Github 109
Number of open issues 4
Average time to close an issue 9 days
Main language JavaScript
Average time to merge a PR 3 days
Open pull requests 2+
Closed pull requests 2+
Last commit over 4 years ago
Repo Created about 5 years ago
Repo Last Updated about 3 years ago
Size 3.15 MB
Homepage http://tumblr.git...
Organization / Authortumblr
Page Updated
Do you use data-lasso? Leave a review!
View open issues (4)
View data-lasso activity
View on github
Book a Mock Interview With Me (Silicon Valley Engineering Leader, 100s of interviews conducted)
Software engineers: It's time to get promoted. Starting NOW! Subscribe to my mailing list and I will equip you with tools, tips and actionable advice to grow in your career.
Evaluating data-lasso for your project? Score Explanation
Commits Score (?)
Issues & PR Score (?)

Data Lasso

Data Lasso is a visualization tool that allows exploration of arbitrary set of data. It is built to be agnostic to the structure and formatting of data.

Imagine this.

You have a set of multi-dimensional data - thousands of entries, each entry having multiple attributes. You might have made a snapshot from your logs, or a slice of your database records, or some other kind of a very rich data.

And you want to get a sense of that data. Explore it, understand it, and get a clear picture of it in your head. You have data in your hands, now all you need is to visualize it. You don't want to spend hours setting up R; You don't want to see OpenOffice spreadsheets take down your CPU trying to build a scatter plot; You just want to see your data.

That is what Data Lasso is for. There is no setup. You don't need to prepare your data. It can visualize half a million entries easily. All of that - in three dimensional space, so you can have complete freedom of looking at your data.


It's easy:

  • ##### Data input

Any CSV, TSV or JSON will do. As long as data reminds of a table, you can use it. Rows are entries, columns are attributes of entries.

Data Lasso will try to silently parse field with name ip into ip subnets on file upload. Field named email will be parsed to extract domain. Field named geo will be broken down onto city and country.

Once you have your file - just upload it to Data Lasso. Or, just use this sample data set.

  • ##### 3D space

There is no configuration necessary. When you upload your data, Data Lasso recognizes attributes in your data. Then you can pick what attribute you want to map to what axis - X, Y, Z or Color.

  • ##### Visualize

Hit 'Go' and that's it. Data is plotted in front of you. Want to select something? Hit spacebar, and you can use polygonal selection tool to select and drill into data.

Finished reading? Head out here to use Data Lasso.

Use Data Lasso on your system

Data Lasso can be be used as a standalone app. Data Lasso runs entirely in a browser, so this repository contains everything necessary to get started.

Checkout the repository locally, run npm install to install necessary dependencies and then run npm start to start local server. Data Lasso will be served on your localhost:3000.

Why would you do that? Because Data Lasso can be extended:


Modules in Data Lasso allow you to add functionality to Data Lasso. Want to display a custom list of selected entries? Want to plug in Data Lasso in a stream of data? Modules will allow that.

In a nutshell, modules have access to Data Lasso's internal event bus - so you can hook into anything you want.

There is a sample module in the repository for your reference.

Use as part of another application

Data Lasso can be used as part of another application, using CommonJS module structure - for example, if you use browserify on your front end stack:

  1. Install data lasso as an npm module with npm install data-lasso --save
  2. Use it in your code with require('data-lasso');


Visualization makes use of 3 spatial dimensions and color. Any attribute can be used for plotting in any of the 4 dimensions.

All dimensions are currently plotted on a simple linear scale. There are no ticks on axis with precise values - but you can see exact values for particular graph entries by hovering over them.

Under the hood, Data Lasso is build using wonderful three.js library to work with WebGL, uses d3 for some data parsing niceties, and uses to browserify to make development feel one step closer to future.

Browser Support

Best usage scenario is a desktop browser with a mouse, although trackpad will work too. While Data Lasso does not care what flavor of OS you use, Data Lasso was not tested in browsers other then Chrome and Firefox.

Effectively handling selecting in 3D space without a mouse is hard, so unfortunately usage on mobile devices is out of scope at this point.


Feel free to open issue on github if you encounter a bug. If you want to get more details on the roadmap of the product, or potentially use it in your stack and need help - contact the author;


Copyright 2015 Tumblr Inc.

Licensed under the Apache License, Version 2.0 (the License); you may not use this file except in compliance with the License. You may obtain a copy of the License at


Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an AS IS BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

data-lasso open issues Ask a question     (View All Issues)
  • about 4 years Questions on Adding Shape of each points to visualize 2nd Categorical Value
  • almost 5 years Horizontal and vertical camera movement options
  • almost 5 years Preprocess unix timestamps
  • almost 5 years Camera perspective improvement
data-lasso open pull requests (View All Pulls)
  • One way ticket for event bus
  • ESLint
data-lasso list of languages used
Other projects in JavaScript
Powered by Autocode - Instant Webhooks, Scripts and APIs
Autocode logo wordmark