I am in the process of publishing my first paper in geosciences. I have developed a model for the paper and now I want to create 8 figures. However, already I've been working on it for 2-3 weeks (for 4 figures) and can't get anything else done. How much time should I spend on the figures and what do you do to speed up the process? Furthermore, I am still at the lowest level of the "science hierarchy" and unfortunately cannot delegate the tasks to others.

I realise that there is no absolute answer, but when is it too much?

  • 10
    It's hard to give an answer without knowing the relevant details. Figures can be very essential and improving them can make a big difference, but in other cases it is acceptable if there are some imperfections, or they could be replaced by other figures that are much easier to do. Also nobody here knows why you spend so much time, i.e., whether what you would want to achieve can be achieved much faster/easier. You better ask somebody who has experience with your type of figures and your type of publication in the same field. Dec 6, 2023 at 10:23
  • 1
    I have to commit that my code is quite bulky and not very efficent, so it takes around 8 Hours to create one map using this code after that I work with Inkscape
    – Weiss
    Dec 6, 2023 at 11:03
  • 3
    @Weiss okay - would it be possible for you to save the output of these 8h of code to a file so you can just instantly load it and plot the figure in a separate code? That way you can tweak the figure parameters easily without having to rerun the entire code.
    – user126108
    Dec 6, 2023 at 11:33
  • 9
    If you are re-running your analyses (each run taking 8 hours and ending with a figure), then you are not "just spending time on illustrations". You are running different analyses. That is a different question. Multiple weeks just for figures does sound excessive, but investing multiple weeks in running different analyses sounds much more reasonable. Dec 6, 2023 at 12:20
  • 3
    In the 8 hours of computation there must be some step that can be re-used. Address them, save the numpy array to a file (there is a function), if you work with dictionaries save them as json (please note that when you reload them the keys will be always string). And of course, get used to have a profiler like numba, you may discover that a single cycle/function is what make you tremendously slow (for example, doing a sqrt with native function instead of numpy function may slow you down of a factor 1000 ....)
    – EarlGrey
    Dec 6, 2023 at 12:42

3 Answers 3


Time is not a very good measure of how much effort is needed. You must make the meaning of your paper understandable by others; if your figures are not understandable, you must continue to put in more time until you can achieve this. Some aspects of figures are absolutely critical yet take very little time to make acceptable. An expert may take less time than a novice, that doesn't mean they can each stop working after the same amount of time, it just means the expert can produce more. This is true of almost every task.

Strategically, it may be worth improving figures to the point that they not only communicate the message but also communicate competence or expertise. This is very difficult to measure, and I'd say impossible to put any number on. I think the best measure is to ask some colleagues you trust for their honest opinion of what impression your figures make.

From the comments, it sounds like your problem is not about the time and effort placed in figures, but rather the computational efficiency of your code. This is an entirely separate problem, and I'd recommend getting advice with your code from someone who understands both programming and your field. It's of course also possible that the inefficiency is inherent in your algorithm and unavoidable without some grand technological breakthrough. In that case, you may be able to speed things up with different hardware but ultimately if you're limited by your algorithm that's just where you are. Improving the speed may be worth a separate paper.


Thanks for putting "numbers" in what people often overlook!

For the first figures you prepare in your career it is necessary to spend an enormous amount of time, unfortunately.

The good aspect is that you will reuse these figures, hopefully, not only for scientific communications but also for proposals, grants requests, abstracts, etc. etc.

The time you spent was well spent if it was spent in building automated way to prepare the figures, badly spent if you spent it by fine tuning the single figures with paint.

And if you were constantly re-running analysis/models to prepare the figures... ugly, but sometimes necessary.

The only useful technique to save time, with nowadays available tools and in the long-run, it is to save the figures in vectorial formats, so they can be modified with Inkscape and similar tools on the fly. Otherwise, you may have a nice bitmap that is practically impossible to modify in a decent way.


Your figures are very important to the communication of your results (I imagine this is especially true in geoscience). Your figures should maximize the amount of data communication while minimizing noise or aspects that are not quintessential to the point the figure is meant to communicate. In my field, figures are very important to this end too (in econometrics), and I spend lots and lots of time making my tables and figures such that they do the goal I've outlined. And if I'm honest, it's an iterative process: you'll spend some time, but after you've submitted it, you'll wish you'd spent just a little more time. So without giving an exact number, a lot of time. Best you can do is automate it with good coding practices.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .