←back to thread

896 points tux3 | 1 comments | | HN request time: 0s | source
Show context
HiPHInch ◴[] No.43546573[source]
I took some effort to change my research interest from computer vision to DFT calculation in quantum chemistry.

Honestly, I'm kind of frustrated now, too many work is close-source in this area. The research paper will tell you everything except how to reproduce this work in minimal effort, it's like they are hiding something.

They also using a `Origin` to plot and MS Word to write paper, which is also non-free licensed, and made them harder to collaborate and reproduce.

replies(5): >>43546641 #>>43546843 #>>43548190 #>>43549084 #>>43551125 #
qwezxcrty ◴[] No.43546843[source]
I miss OriginPro in my undergrad when we had campus licenses for, before moving to matplotlib for data visualization. matplotlib is simply too disappointing for making publication quality figures. The most recently encountered problem is how to plot with a broken x-axis, which is one of the most basic need in physical science but requires a non-trivial amount of hacking to get with matplotlib.

Open source tool or not, I don't care at all as I get the science right. I have already enough frustration dealing with my samples, so I simply want the least frustration from the software I use to plot.

replies(3): >>43548449 #>>43549248 #>>43550741 #
prennert ◴[] No.43548449[source]
Matplotlib is a bit painful. Often seaborn will work quicker, especially when using Pandas dataframes with proper column names and seaborn compatible layout.

Its annoying that you cannot create a broken axis out-of-the box, but I am sure you can wrap this to make your own convenience function: https://matplotlib.org/stable/gallery/subplots_axes_and_figu...

replies(1): >>43550712 #
1. qwezxcrty ◴[] No.43550712{3}[source]
That link was what I referred to after Googling, but in my case I need the width of the left part and the right part to be different, which requires setting width_ratios in the subplots and adjusting the slope of the hacky lines used to draw the broken axis symbol. seaborn also would not help in this exact case.

There is a package by some nice guy: https://github.com/bendichter/brokenaxes just to do the broken axis. But not being built-in in Anaconda is already an annoyance, and in my case it generates a figure with a ugly x-label.

I ended up letting ChatGPT generate the code for me with the two required hacks. I simply need the figure in the minimal amount of time and with the least mental bandwidth, so I can focus on the science and catch the conference deadline. Origin is a very "over-engineered" piece of software, but hey getting a broken axis is so simple (https://www.originlab.com/doc/Origin-Help/AxesRef-Breaks ). Sometimes the "over-engineering" is necessary to minimize users' pain.