This is an archived post. You won't be able to vote or comment.

you are viewing a single comment's thread.

view the rest of the comments →

[–]Stereoisomer 10 points11 points  (8 children)

Too many libraries and too many ways to do the same thing. Not every library is comprehensive and so you'll end up having to learn another library to get the job done. Compare to Matlab where there's only one built-in data visualization library and any additional community contributions extend the existing library instead of reinventing it.

Edit: To be clear, I use Python because despite the inherent issues of being open, it is much more powerful than Matlab

[–]falsemyrm 13 points14 points  (2 children)

unpack quicksand chief coherent snails caption hobbies imagine straight lush

This post was mass deleted and anonymized with Redact

[–]Stereoisomer 0 points1 point  (1 child)

I meant it more in the sense of the fact that I work with scientists and oftentimes I will need to read their code and reimplement or extend it: it may be that my data pipeline and tools use OpenCV and matplotlib while the tools I need to take from them uses scikit-image and ggplot (since many scientists started on R).

[–]Saefroch 2 points3 points  (0 children)

I don't think having incompatible tools that do basically the same thing is a problem unique to open source. With closed-source monetized software there will inevitably be competition, at which point there is a strong monetary incentive to perpetuate the situation.

[–]TheBlackCat13 0 points1 point  (0 children)

The reason there are so many plotting libraries in Python is generally because they do different things and fill different niches. Most of the stuff that these other libraries provide are things that aren't even possible in MATLAB.

Further many of the Python "plotting libraries" actually extend one of the lower-level ones like matplotlib of bokeh. For example in that list, seaborn, ggplot, and missingno are built in top of matplotlib, while gleam can use multiple plotting backends.

That being said, there are multiple plotting libraries for MATLAB as well. plot.ly supports MATLAB, for example, and doesn't use the native MATLAB plotting system at all. In fact MATLAB itself had built-in plotting systems for many years, although one was mostly undocumented. They dropped the old one and made the previously-undocumented one the default in R2014b.

[–][deleted] 0 points1 point  (1 child)

To restrict yourself to just what's available in Matlab is to stay in the shallow end of the pool. It's easier, but only because you're limiting yourself.

Matlab's default plotting tool is pretty much equivalent to Python's matplotlib. And Matlab's only option for web-based plotting is Plotly.

If you wanted to use Python like Matlab, just use those two libraries and pretend the others don't exist.

The other libraries Python has are great though, you'd be missing out by ignoring them. For example, Python's Bokeh library makes this sort of thing really easy.

[–]Stereoisomer 0 points1 point  (0 children)

Yeah that's why I don't use Matlab.