10 ms·
Plot.ly: Matlab for the Web
I've been working on this tool for a few months. Would love to hear any and all feedback from the HN community and MATLAB/Numpy folks.
- jparmer 13y agoThoughts?
- txttran 13y agoI don't use matlab-esque tools that much, so I can't really comment on the functionality, but from a web dev perspective, it's really cool! How long did it take you guys to build it?
- jparmer 13y agoIt took two of us about 6 months, with one of us part-time and a few friends helping after their day jobs.
- mtowle 13y agoDude, that click-drag is nasstyy! Great work.
- jopof 13y agoIt feels confusing and distracting, not affording a "zoom" function.
- bockris 13y agoThe 'paste' event is sweeeeet.
- quannabe 13y agoNice work! Double click to autoscale is intuitive. Love the simple click to change Title/axis label.
- jdkanani 13y agoGreat work! UI is amazing and very impressive, except that "zoom" context menu.
- epaga 13y agoLooks awesome - and a bit overwhelming at first. Perhaps include a link to the tutorial in the very first popup window?
- jferge 13y agoI was just thinking about making something like this after finishing my college stats class. I'm not sure if I just don't see it, but it would be cool to add in some statistics stuff, mean, variance, linear regression estimates and stuff like that.
- jparmer 13y agoHey jferge, Thanks for the feedback. You can already do linear (and polynomial) regression through the plotly spreadsheet GUI. Way easier than Excel, imo: Linear fit with dates: https://plot.ly/~jackp/487 https://plot.ly/~jackp/487 Partial linear fit): https://plot.ly/~jackp/489 https://plot.ly/~jackp/489 5th order polynomial fit: https://plot.ly/~jackp/490 https://plot.ly/~jackp/490
- niggler 13y agoRetina macbook pro early 2013, chrome 26. Zooming some of the plots is noticably slow (and zooming out of the Hopf Bifurcation plot occasionally causes chrome to stop responding)
- jparmer 13y agoCool, thanks. We could probably tone down the size of our demos.
- simonster 13y agoFirst of all, it's gorgeous, far more visually pleasing than Matlab's plotting tools, which still seem to lack a decent compositing engine. As far as UX, I would expect click+drag to move the graph, but instead it gives me a context menu to zoom. (And why is "zoom out" in that context menu? Why do I need to select anything for that?) It would also be nice to be able to zoom into a point with the scroll wheel. Also, the command line doesn't seem to work at all in Firefox Nightly, and is quite slow to respond in Safari. I'm also a little curious how the concept will work out. There aren't many situations where I've wanted to put an interactive plot up online, and I suspect that the online Python environment is too limited for me to do my data analysis online (although perhaps this is your eventual plan?). If I could put my locally generated plots on plot.ly directly from Matlab/Python/Julia, I could see myself sending (private) links to online plots to my collaborators, but I'm not sure I'd pay for the privilege.
- davorak 13y ago> As far as UX, I would expect click+drag to move the graph, but instead it gives me a context menu to zoom. My impression was after reading this is that I expected to be able to drag the graph by holding cmd, option, ctr, or shift with click and drag. It turned out to be shift. I think I get this expectation from autocad, labview, mathematica and potentially other products as well.
- jparmer 13y agoCool. Really helpful stuff.
- jparmer 13y agoThanks for the feedback! We're most excited about collaborative data analysis. Imagine being able to simultaneously view/edit a graph and script for a computational problem being solved in a team... Programmers can do this in git, but a data scientist might want a tool that is more visual and focused around graphs. I worked at a semiconductor R&D company for a while and we often shared scripts and graphs by email... it felt like the 90s (:
- Osmium 13y ago
- tschaume 13y agoextremely cool, guys! Especially liked the script functionality. Just brainstorming: Do you guys have an API one could use to send python code to your app? Or even get back the plot to embed it in one's own app? That'd be helpful for many other (python based) web apps, I'd think. P.S.: Where are the "Share/Tweet" buttons? :-)
- seiferteric 13y agoI am working on a site with the ability to update embeddable graphs via API and a python library/CLI tool at https://graphit.io https://graphit.io
- tschaume 13y agovery nice. I'll keep an eye on it.
- jparmer 13y agoCheck out Share/Tweet options under "Share" on the graphing toolbar. Here's a log-log graph my colleague shared, for example: https://plot.ly/~alex/13/ https://plot.ly/~alex/13/
- tschaume 13y agoyes, that would be sharing my stuff with colleagues. I only wanted to quickly tweet about you guys w/o searching for your handle on twitter.
- visualR 13y agoIs there a monetization strategy? Seems like I see things like this popup every couple months. Is there really a demand?
- jparmer 13y agoLots of private companies with R&D don't like their data leaving the building, but want a collaborative tool that's more technical than G docs. We're exploring this space, hopefully while providing a kick-ass, free or very cheap graphing tool for the public at large.
- visualR 13y agoIn my experience the public at large is satisfied with Excel/Numbers, while scientists prefer their power tools like R or Matlab. Perhaps you should pivot and build something like RStudio but for numpy.
- simonster 13y agoIsn't IPython essentially RStudio for Python? I'm greatly enamored of IPython Notebook's general approach to organizing data analysis (see http://ipython.org/notebook.html http://ipython.org/notebook.html), although 1) it currently lacks interactive plotting tools and 2) I think it's targeted toward a more technical audience than this.
- kyzyl 13y agoTo take that a step further, Continuum Analytics has a product called Wakari[1] that is pretty much a web-based, sandboxed, nicely glued together version of everything mentioned in this thread: python environment, IDE, IPython notebook, interactive plotting, collaborative sharing, SSH console, file manager, dataset manager. It hooks into various APIs, S3, etc., and based on my usage so far it is very good UI/UX decisions... almost as if actual scientists designed it. Of course, it is not free! Right now it's in beta and (I think) anyone can try it though. I'm not sure what their plan is for pricing, although I do believe they mentioned a local install option for clients who don't want their data walking out of the building. (I am in no way affiliated) [1] http://www.wakari.io http://www.wakari.io
- rrix 13y agohttp://mr-mariusz.blogspot.com/2013/04/how-we-failed-our-yc-interview.html http://mr-mariusz.blogspot.com/2013/04/how-we-failed-our-yc-... was on HN a week or two back.
- leeny 13y agoIt would be awesome if the graphs enabled mouseovers (e.g. bar chart where you can mouse over each bar to get additional info). Unless I missed something and this is already a feature...
- jparmer 13y agoNo mouseover yet - Thanks for the feedback!
- deleted 13y ago[deleted]
- deleted 13y ago[deleted]
- iamshs 13y agoCool beans. MATLAB's plotting tools need to improve a lot, and hence i use export_fig.m a lot. Is a Skydrive option in the works?
- misiti3780 13y agoI agree - matlab's plotting is not nice, but found ggplot2 and never turned back (also had to switch languages though)
- jparmer 13y agoOnly google drive and dropbox so far. Just curious, why not dropbox?
- replax 13y agoWell, some people think of skydrive as superior to DB (myself included). E.g. if you are a student and bought MS Office, you get 20gb skydrive storage for free. Also your normal free storage is at 7gb. And it's conveniently tyed into outlook.com, which still has push support unlike gmail. Also (of course personal tAste, too) but I prefere MS's online Office over google's. I think skydrive support would be great :)! Btw, really really well done from what I tried!
- benjarrell 13y agoSkyDrive support, please. I use it since it integrates into Windows so well, and especially Office 2013. It also helps that my account is old enough that I have 25GB free storage. I don't trust Dropbox security wise. Google does so many product launches/retirements that I don't trust anything beyond search and Chrome to stay around.
- iamshs 13y agoBecause I like Skydrive's web interface a lot, and Office Web apps preserve document fidelity. I am presently writing a research paper and sending job apps, and I find Office Webapps a godsend boon for this purpose. I will not move to Google drive or Dropbox.
- etrautmann 13y agoThis looks great so far. I'd remove the drop shadows on the zoom box, and remove the context menu. If you click and drag a box, it should automatically zoom in, and reset zoom when you double click (as it currently does), with zoom out as a separate tool or shortcut.
- jparmer 13y agoAwesome, Thanks for the feedback. Seems HN has consensus on this one.
- etrautmann 13y agoI was thinking about developing something similar, nice work! an extension of this idea to 3D plots using WebGL would be awesome. I'd love to have more interactive plotting features for presenting scientific results on the web.
- jparmer 13y agoWe're slowly churning out 3d. Here's a preview: pic.twitter.com/jVaZsDOv7x
- jopof 13y agoIt seems more like gnuplot than matlab. Can I write matlab code?
- thomaslutz 13y agoPerhaps the poster used Matlab just to plot things.
- JosephRedfern 13y agoI agree. This is a subset of Matlab.
- vxNsr 13y agoInteresting idea, though I just finished a course in Matlab so this seems laughably inadequate. My biggest issue with these visualize tools is that you can't really choose how to visualize things, meaning unless the creator has thought of that idea as plausible you can't use it, I like to manipulate data in many ways and these (socrata, manyeyes, etc) just don't seem to think the same way I do... Edit: just saw the command line button, this may actually be awesome!
- feniv 13y agoWow. Great UI! The selling point for me is the ability to simply plot points using python code in a browser.
- user24 13y agoFinally. I've been saying this should be done for ages[1] [1] Here's a 2010 blog post I made saying "do matlab in JS, make money". http://www.puremango.co.uk/2010/10/ten-ideas/ http://www.puremango.co.uk/2010/10/ten-ideas/
- Osmium 13y agoExcept this isn't what this is. Matlab is far more than a plotting tool, and requires heavy computational resources: the closest you're going to get to Matlab in the browser is a hosted ipython/sage-style solution (which already exists, albeit in a form that isn't user-friendly enough).
- bazzargh 13y agoWhat about mathics? http://www.mathics.org/ http://www.mathics.org/ (just to be clear - I know mathics is a hosted solution, and uses Sage. I'm asking, does this meet your 'user friendly enough' criteria)
- taliesinb 13y agoIn fact we (Wolfram) hired the primary Mathics developer to work on Mathematica Online, which will be released in the next few months: http://www.wolfram.com/mathematica-online/ http://www.wolfram.com/mathematica-online/ Beta testers wanted!
- pwang 13y agoWhat about Wakari[1]? Full Python and IPython, in the browser, backed by AWS, online interactive plotting (via Bokeh[2]). One click sharing of IPython notebooks. Enterprise version is installable on your own machine or cluster. [1] http://wakari.io http://wakari.io [2] http://github.com/ContinuumIO/bokeh http://github.com/ContinuumIO/bokeh
- vnagpal 13y agocan anybody please explain how to plot in it using python i tried example x=[5,7,9,3,1,8,12] y=[3,7,6,1,7,11,8] plot(x,y) after clicking the button "Run" its not doing anything
- vnagpal 13y agocan anybody please explain how to plot in it using python i tried example x=[5,7,9,3,1,8,12] y=[3,7,6,1,7,11,8] plot(x,y) after clicking the button "Run" its not doing anything
- c0g 13y agoMake it interface with Python and Matlab on my local machine and export to .ps and I'll give you some money.
- edtechdev 13y agoSee jStat for one javascript statistical library that is similar to what is offered in R and Matlab: http://www.jstat.org/ http://www.jstat.org/ And Formula.js has javascript versions of all the Excel functions: http://stoic.com/formula/ http://stoic.com/formula/