# Way to add progress bar to map function?

**URL:** <https://discourse.julialang.org/t/way-to-add-progress-bar-to-map-function/6426>\
**Category:** General Usage\
**Created:** [October 13, 2017, 6:33pm UTC](https://discourse.julialang.org/t/way-to-add-progress-bar-to-map-function/6426 "2017-10-13T18:33:42Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![djsegal](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/djsegal/32/13752_2.png) [@djsegal](https://discourse.julialang.org/u/djsegal)\
**Post date:** [October 13, 2017, 6:33pm UTC](https://discourse.julialang.org/t/way-to-add-progress-bar-to-map-function/6426/1 "2017-10-13T18:33:42Z")

</div>

What would be the best way to add a loading bar (or just simple dots) to a map function

This is for maps that can take several minutes.

* * *

i.e.

```julia
function foo(x)
  sleep(x)
  x ^ 2
end

cur_range = 1:3

map(x -> foo(x), cur_range)

```

---

<div class="post-metadata">

**Author:** ![rdeits](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/rdeits/32/286_2.png) [@rdeits](https://discourse.julialang.org/u/rdeits)\
**Post date:** [October 13, 2017, 7:06pm UTC](https://discourse.julialang.org/t/way-to-add-progress-bar-to-map-function/6426/2 "2017-10-13T19:06:15Z")

</div>

[GitHub - timholy/ProgressMeter.jl: Progress meter for long-running computations](https://github.com/timholy/ProgressMeter.jl) supports for-loops but not `map()`, but I bet it could be adapted for your use case.

---

<div class="post-metadata">

**Author:** ![djsegal](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/djsegal/32/13752_2.png) [@djsegal](https://discourse.julialang.org/u/djsegal)\
**Post date:** [October 13, 2017, 9:08pm UTC](https://discourse.julialang.org/t/way-to-add-progress-bar-to-map-function/6426/3 "2017-10-13T21:08:28Z")

</div>

You’re right.

There seems to be a pull request out for it already:

- [https://github.com/timholy/ProgressMeter.jl/pull/82](https://github.com/timholy/ProgressMeter.jl/pull/82)

---

<div class="post-metadata">

**Author:** ![rdeits](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/rdeits/32/286_2.png) [@rdeits](https://discourse.julialang.org/u/rdeits)\
**Post date:** [October 13, 2017, 9:22pm UTC](https://discourse.julialang.org/t/way-to-add-progress-bar-to-map-function/6426/4 "2017-10-13T21:22:09Z")

</div>

Also, you can already use a comprehension, so instead of `map(foo, cur_range)`, you can do `@showprogress [foo(x) for x in cur_range]`
