5 ms·
It IS a 90s language! ;-) My main issue with Python is distribution. Oh, you're using it on Windows? No worries, just install matplotlib using pip. Oh wait, yo
by donquichotte 10y ago
It IS a 90s language! ;-)
My main issue with Python is distribution. Oh, you're using it on Windows? No worries, just install matplotlib using pip. Oh wait, you need to install cygwin and a C compiler and for some weird reason it won't compile but no worries there is a website with Unofficial Windows Binaries for Python Extension Packages but it's still not working....
Numerical computations and plotting are also my prime use cases for Python. IMO it's the only real competition to Matlab in this area.
- toyg 10y agoThe problem you describe has been fixed with precompiled wheels. As long as projects make the effort to package them, there is no need for compilers now.
- afashglaksnhb 10y agoDon't know why this was downvoted. NB you need to upgrade your pip to the latest to use this if you are on Ubuntu LTS though. (But you are working in virtualenvs so this isn't a problem right?)
- inlineint 10y agoI think that Continuum Analytics does incredible work in this direction, so it is really possible to just do `conda install matplotlib` and install matplotlib on any distribution.
- fnord123 10y agoWindows still doesn't come with a C compiler? At least it finally comes with ssh, right?
- pjmlp 10y agoUNIX also not, since Sun decided it was a good idea to sell the SDK separately, thus leading some companies to sponsor the until then largely ignored GCC. The *BSDs and GNU/Linux variants are the exception to this. In any case, Visual C++ and the plain command line SDK are a download away.
- dagw 10y agoWindows still doesn't come with a C compiler Not with the default install, but it's a free download from microsoft if you want one (either as part of an IDE or as a standalone command line tool). An official native port of OpenSSH is in beta and should be ready to ship officially soon.
- yokohummer7 10y agoMight be an off-topic, but recently I learned that Windows does come with a C# compiler. It's included in the .NET runtime, which is installed by default nowadays. This might be useful if you're extremely lazy to install any language implementation. It is quite amazing since even Ubuntu doesn't ship a C/C++ compiler by default.
- ue_ 10y agoI'm surprised Ubuntu doesn't come with gcc.
- fnord123 10y agoYou type in 'sudo apt-get install build-essentials' and you have it. I don't what the process on Windows these days but you used to have to find visual studio install media, install it, and reboot two or three times.
- dagw 10y agoI don't what the process on Windows these days 1) Go to visualstudio.com 2) click Downloads if you want the full IDE: 3) choose between downloading free version of a trial of the professional version if you just want the command line tools 3) scroll down until you find C++ Build Tools and download that 4) double click the file you just downloaded. 5) Done
- fnord123 10y agoNo more reboots?
- dagw 10y agoNot that I can recall, at least not on Windows 10.
- dragonwriter 10y agoYeah, visual studio now installs decently. Uninstall or upgrade is still a nightmare, but installing it on a PC which has never had it isn't bad.
- zo1 10y agoIt doesn't really matter when it comes to Python, for the most part. Most big packages now distribute wheels which include pre-compiled binaries. I.e. no need for a compilation toolchain on Python. It's been like this for a year or so, I think, and continuously getting better.
- baldfat 10y agobash subsystem in Windows 10 is pretty amazing in where it presently is and where it is going. https://github.com/Microsoft/BashOnWindows https://github.com/Microsoft/BashOnWindows You can compile C++ in Visual Studio and build a binary for Linux with gcc.
- wuschel 10y ago> Numerical computations and plotting are also my prime use cases for Python. IMO it's the only real competition to Matlab in this area. What about Julia and R? I have never worked with them, I am just wondering that they are not mentioned.
- deleted 10y ago[deleted]
- baldfat 10y agoThere has been tension between the Python and R community, but not at all with the developers, i.e. feather development by both R's Hadley Wickham and Wes McKinley. Python and R are great tools, but the Python community tends to call R garbage and believes that Python has over taken R which is actually not true. R has really grown and is still the number one Open Source language in the domain and I think R has more resources behind it than Python. http://r4stats.com/articles/popularity/ http://r4stats.com/articles/popularity/ R has actually already surpassed Matlab. Now R has some funky sides to it (Which you don't need to use) and R also has many people who were not good at programming making horrible examples. It surprised me how functional R is and there is a lot of Scheme in the under belly. The tools and libraries are just getting better and better. R in the past 4 years has really become amazing. I left Python for R and it has been an amazing ride for me with the Hadleyverse of libraries. Millions has been invested into R with Microsoft even making it a part of SQL Server and Azure after buying R Revolutions. The tools that have been coming out are amazing. Julia has been a promise on the horizon which I haven't had need of. For my workflow R has been dead on pleasure to use and my data sets are not so large that I need it. I also could use R with Spark if that ever becomes an issue.
- deleted 10y ago[deleted]
- breatheoften 10y agoThere isn't anything good about matplotlib that I can see. Maybe I'm just not smart enough to see what's nice about it -- but as someone who has to learn it rather than already indoctrinated into matlab style plotting -- it seems like a disaster ... I switched to bokeh and am so far much happier
- mivade 10y agoMatplotlib's main API is pretty terrible. But it's just fine for the simple plots that scientists and engineers are often needing (e.g., just plot y vs. x). It's also pretty straightforward to get publication-quality plots. Bokeh can handle simple plotting and more complex visualizations, but it is aimed mostly at interactive visualizations rather than plotting for publication. For now, matplolib is the only real option for that in the Python world. Matplotlib inherits most of its baggage from originally being meant to mimic Matlab plotting that many were then familiar with. As an aside, I find the pandas interface to plotting with matplotlib to generally be much easier to work with.
- ylem 10y agoThis. Where I work, a lot of the scientists use matlab. Transferring from that to matplotlib is relatively simple. Also, making publication quality graphics is what I use it for. If I want to make something interactive these days, I tend to just put it on the web...
- lunchladydoris 10y agoDid you use something before Bokeh that you preferred, or is your comment based on Bokeh being generally better than Matplotlib?
- breatheoften 10y agoI should clarify that my experience is pretty narrow in the python space. The comment was based on my (recent) experiences in the land of jupyter notebooks -- first using matplotlib and then switching to bokeh and finding the api to be more straightforward.
- edraferi 10y agoHave you not discovered the Anaconda distribution yet? Conda makes a lot of this pain go away.
- attractivechaos 10y agoConda people really understand how to distribute code. It is great except that it doesn't always come with the latest package versions. Some packages are a few years old, which sometimes troubles.
- bbernoulli 10y agoI don't think this has been true for at least a couple of years. There are wheels posted back to 2014 and maybe farther (didn't check beyond 1.4.1). https://pypi.python.org/pypi/matplotlib https://pypi.python.org/pypi/matplotlib