Re: [matplotlib-devel] RFC: candidates for a new default colormap
On Wed, Jun 3, 2015 at 5:17 PM, Stéfan van der Walt ste...@sun.ac.za wrote: On Wed, Jun 3, 2015 at 5:08 PM, Nathan Goldbaum nathan12...@gmail.com wrote: I'm a big fan of option D. So much so that when I needed to make a movie of ony my galaxy simulations today I went ahead and used it: https://youtu.be/bnm554et0T8 Beautiful! How hard would it be to also do this for the other proposed colormaps? Thankfully you made it pretty easy to script this. jet: https://www.youtube.com/watch?v=dsvT5hImPmo parula: https://www.youtube.com/watch?v=8146CMi-OaQ option a: https://www.youtube.com/watch?v=IqvxuQSzWO4 option b: https://www.youtube.com/watch?v=wa7bpV3XPV0 option c: https://www.youtube.com/watch?v=3rHbq4jw1ew option d: https://www.youtube.com/watch?v=2_HiUXVNm2k Stéfan -- ___ Matplotlib-devel mailing list Matplotlib-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-devel -- ___ Matplotlib-devel mailing list Matplotlib-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-devel
Re: [matplotlib-devel] RFC: candidates for a new default colormap
In our group I also recieved quite mixed responses: - C B A (2 x) - B A C - A B C - C - B One collegue having anomalous color vision (something between protanomaly and protanopia) called *all* three versions harsh to his eye (like looking into a cars lights at night) and rather unpleasant. He considered C as the least unpleasant, but not that easy to look at. Moreover, he stated that, the parula may be flawed, but at least it doesn’t make one want to look away immediately. Best, Arnd -- ___ Matplotlib-devel mailing list Matplotlib-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-devel
Re: [matplotlib-devel] RFC: candidates for a new default colormap
A brief poll of my office gave 3 A's and a B. One of the A's came from someone who can't remember their distinct flavor of color blindness, but definitely gets tripped up by reds and greens. -p On Wed, Jun 3, 2015 at 1:29 PM, Arnd Baecker arnd.baec...@web.de wrote: In our group I also recieved quite mixed responses: - C B A (2 x) - B A C - A B C - C - B One collegue having anomalous color vision (something between protanomaly and protanopia) called *all* three versions harsh to his eye (like looking into a cars lights at night) and rather unpleasant. He considered C as the least unpleasant, but not that easy to look at. Moreover, he stated that, the parula may be flawed, but at least it doesn’t make one want to look away immediately. Best, Arnd -- ___ Matplotlib-devel mailing list Matplotlib-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-devel -- ___ Matplotlib-devel mailing list Matplotlib-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-devel
Re: [matplotlib-devel] RFC: candidates for a new default colormap
On 2015/06/02 7:58 PM, Nathaniel Smith wrote: On Tue, Jun 2, 2015 at 10:03 PM, Paul Ivanov p...@berkeley.edu wrote: That said, if you want to play around with the editor tool, it's linked on the webpage :-). This is a really nice tool! Attached is an example of a map that circles the other direction, and that sacrifices some visual delta for less extreme ends. Although I think the sunrise type of map that you offered in versions A, B, and C is a good one to have in the arsenal, I am not convinced that it should be the only category to be considered as a default. Do we really want to reject the somewhat Parula-like category just because Matlab uses the real Parula? I'm not saying the attached example is particularly good; it is intended to re-introduce the category. (It is somewhat similar to a reversal of our ColorBrewer YlGnBu, so I tried to name it following that scheme.) It seems that the fundamental constraints in this map generator tend to yield a somewhat muddy dark end and a muted middle. That's one compromise among many that are possible. Eric from matplotlib.colors import LinearSegmentedColormap from numpy import nan, inf # Used to reconstruct the colormap in pycam02ucs.cm.viscm parameters = {'xp': [22.674387857633945, 11.221508276482126, -14.356589454756971, -47.188177587392218, -34.590010048125208, 0.15039134803535603], 'yp': [-20.102530541012214, -33.082460732984288, -42.24476439790574, -5.5955497382198871, 42.5065445026178, 24.563699825479944], 'min_JK': 18.8671875, 'max_JK': 92.5} cm_data = [[ 0.26700401, 0.00487433, 0.32941519], [ 0.2685542 , 0.00957471, 0.33533275], [ 0.27003443, 0.01455696, 0.34119436], [ 0.27144484, 0.01982836, 0.34699773], [ 0.27278686, 0.02539504, 0.35273831], [ 0.27405872, 0.03126572, 0.35841766], [ 0.27526033, 0.03744784, 0.36403393], [ 0.27639307, 0.04380557, 0.36958299], [ 0.2774554 , 0.04993149, 0.37506557], [ 0.27844714, 0.05585994, 0.38048004], [ 0.27936893, 0.06162751, 0.38582368], [ 0.28022049, 0.0672627 , 0.39109518], [ 0.28100114, 0.07278804, 0.39629373], [ 0.28171081, 0.07822095, 0.40141769], [ 0.28235053, 0.0835745 , 0.40646432], [ 0.28291925, 0.08886094, 0.4114333 ], [ 0.2834169 , 0.09408964, 0.41632321], [ 0.28384358, 0.09926827, 0.42113253], [ 0.28420026, 0.10440257, 0.42585912], [ 0.28448608, 0.10949867, 0.43050257], [ 0.2847012 , 0.11456108, 0.43506157], [ 0.28484581, 0.11959358, 0.43953491], [ 0.28492117, 0.12459863, 0.44392086], [ 0.28492661, 0.12957963, 0.44821903], [ 0.28486252, 0.1345388 , 0.45242844], [ 0.28472931, 0.13947799, 0.45654822], [ 0.28452817, 0.14439827, 0.46057726], [ 0.28425933, 0.14930113, 0.46451508], [ 0.28392311, 0.15418778, 0.46836123], [ 0.28352022, 0.15905901, 0.47211522], [ 0.28305157, 0.16391535, 0.47577663], [ 0.28251884, 0.16875671, 0.479345 ], [ 0.28192206, 0.17358397, 0.48282047], [ 0.28126222, 0.17839731, 0.486203 ], [ 0.28054043, 0.18319677, 0.48949266], [ 0.27975811, 0.18798216, 0.49268964], [ 0.27891713, 0.19275301, 0.49579421], [ 0.27801794, 0.19750965, 0.49880695], [ 0.27706191, 0.20225183, 0.50172842], [ 0.27605049, 0.20697927, 0.50455929], [ 0.27498517, 0.21169165, 0.50730037], [ 0.27386887, 0.21638789, 0.50995262], [ 0.272702 , 0.22106829, 0.51251706], [ 0.27148621, 0.22573247, 0.51499482], [ 0.27022324, 0.23038004, 0.51738712], [ 0.26891491, 0.23501057, 0.51969528], [ 0.26756319, 0.2396236 , 0.52192074], [ 0.26617119, 0.24421813, 0.52406522], [ 0.26473951, 0.24879442, 0.52613012], [ 0.26327012, 0.25335212, 0.52811709], [ 0.26176496, 0.25789086, 0.53002785], [ 0.26022606, 0.26241031, 0.53186418], [ 0.25865541, 0.26691017, 0.5336279 ], [ 0.25705544, 0.27138997, 0.53532102], [ 0.25542898, 0.27584915, 0.53694571], [ 0.25377689, 0.28028798, 0.5385036 ], [ 0.25210122, 0.28470627, 0.53999668], [ 0.25040396, 0.28910388, 0.54142695], [ 0.24868713, 0.29348068, 0.54279642], [ 0.2469527 , 0.29783657, 0.54410709], [ 0.24520266, 0.3021715 , 0.545361 ], [ 0.24343892, 0.30648544, 0.54656016], [ 0.24166391, 0.31077823, 0.54770676], [ 0.23987982, 0.31504978, 0.54880295], [ 0.23808762, 0.3193005 , 0.54985035], [ 0.23628909, 0.3235305 , 0.5508509 ], [ 0.23448595, 0.32773993, 0.5518065 ], [ 0.23267989, 0.33192894, 0.55271901], [ 0.23087254, 0.33609773, 0.55359027], [ 0.22906545, 0.34024654, 0.55442204], [ 0.22726014, 0.34437561,
Re: [matplotlib-devel] RFC: candidates for a new default colormap
On 2015/06/03 12:27 PM, Nathaniel Smith wrote: We also tried tweaking it a bit to end on a more saturated yellow, which I think helps increase contrast in the deuteranomalous version in particular, and put this on the website as an option D: https://bids.github.io/colormap/images/screenshots/option_d.png Thank you. To me, this is more comfortable to look at than A, B, and especially C. We also previously designed a colormap that follows parula's ideas pretty closely, in terms of starting/ending points, overall brightness, and the trick of kinking over through orange at the top end. It ends up being much much more green than parula though: https://bids.github.io/colormap/images/screenshots/fake_parula.png Interesting. That kink comes through as a visible over-emphasis of the orange range in the images. Attached are two more variations on the clockwise dark-to-light theme. They achieve more dynamic range, and perhaps colorfulness, but at the cost of more relative loss of contrast in the colorblind cases. Is the tradeoff worthwhile? Eric from matplotlib.colors import LinearSegmentedColormap from numpy import nan, inf # Used to reconstruct the colormap in pycam02ucs.cm.viscm parameters = {'xp': [28.782590300914933, 60.468890475434989, -24.282418425088565, -47.188177587392218, -34.590010048125208, -8.6301496641810616], 'yp': [16.928446771378731, -42.626527050610804, -74.312827225130874, -5.5955497382198871, 42.5065445026178, 39.070680628272271], 'min_JK': 18.0859375, 'max_JK': 95.0390625} cm_data = [[ 0.30593816, 0.00266902, 0.0061051 ], [ 0.31049445, 0.00281314, 0.01074331], [ 0.31501841, 0.00297468, 0.01602065], [ 0.3195184 , 0.00312249, 0.02204556], [ 0.32398709, 0.00328294, 0.02880862], [ 0.32843006, 0.00343291, 0.03641347], [ 0.33284287, 0.00358919, 0.04466259], [ 0.33722794, 0.00373997, 0.05287228], [ 0.34158401, 0.00388914, 0.06102198], [ 0.34591015, 0.0040397 , 0.06913597], [ 0.35020835, 0.00417912, 0.07726788], [ 0.35447435, 0.00432876, 0.08538353], [ 0.35871326, 0.00445639, 0.09357214], [ 0.36291947, 0.00459302, 0.10177173], [ 0.36709555, 0.00471965, 0.11003439], [ 0.37124003, 0.00484227, 0.11835335], [ 0.37535139, 0.00496951, 0.12671589], [ 0.37943182, 0.00507827, 0.13517718], [ 0.38347763, 0.0051954 , 0.1436843 ], [ 0.38748989, 0.00530563, 0.15227436], [ 0.39146758, 0.00541166, 0.16094589], [ 0.39540886, 0.00552783, 0.169674 ], [ 0.3993146 , 0.00563205, 0.17850829], [ 0.40318253, 0.00574449, 0.18741263], [ 0.40701159, 0.00587141, 0.19638009], [ 0.41080188, 0.00598896, 0.20546335], [ 0.41455113, 0.0061258 , 0.21461195], [ 0.41825834, 0.00628491, 0.22382709], [ 0.42192262, 0.00644595, 0.23315539], [ 0.42554221, 0.0066368 , 0.24255105], [ 0.42911584, 0.00686223, 0.25201397], [ 0.43264184, 0.00711059, 0.26157606], [ 0.43611865, 0.00739991, 0.27121371], [ 0.43954483, 0.00774183, 0.28091667], [ 0.44291849, 0.0081382 , 0.29069433], [ 0.44623724, 0.00858895, 0.30056102], [ 0.4494999 , 0.00911734, 0.31048822], [ 0.45270459, 0.00973307, 0.32047446], [ 0.45584867, 0.0104402 , 0.33053061], [ 0.45892961, 0.01124886, 0.34065775], [ 0.46194612, 0.01218144, 0.35083506], [ 0.46489594, 0.01325186, 0.3610596 ], [ 0.46777666, 0.01447465, 0.37132922], [ 0.47058405, 0.01585603, 0.38166101], [ 0.47331737, 0.01742581, 0.39202674], [ 0.47597409, 0.01920295, 0.40242192], [ 0.47855157, 0.02120777, 0.41284165], [ 0.48104715, 0.02346196, 0.42328061], [ 0.48345624, 0.02598275, 0.43374728], [ 0.48577749, 0.02880089, 0.44422203], [ 0.48800839, 0.03194345, 0.45469593], [ 0.49014605, 0.03543786, 0.46516216], [ 0.49218758, 0.03931295, 0.47561354], [ 0.49413003, 0.04347853, 0.48604251], [ 0.49597027, 0.04779536, 0.49644208], [ 0.49770377, 0.05226892, 0.50681131], [ 0.49932935, 0.05689842, 0.51713227], [ 0.50084406, 0.06168052, 0.52739632], [ 0.50224498, 0.06661185, 0.53759456], [ 0.50352922, 0.07168902, 0.54771787], [ 0.50469393, 0.07690861, 0.55775699], [ 0.50573632, 0.0822671 , 0.56770249], [ 0.50665366, 0.0877609 , 0.57754487], [ 0.50744331, 0.09338632, 0.58727454], [ 0.5081027 , 0.09913955, 0.59688191], [ 0.50862938, 0.10501665, 0.6063574 ], [ 0.50902102, 0.11101356, 0.61569147], [ 0.5092751 , 0.11712627, 0.62487537], [ 0.50938958, 0.12335046, 0.63389967], [ 0.50936297, 0.12968134, 0.64275439], [ 0.50919354, 0.13611425, 0.65143072],
Re: [matplotlib-devel] RFC: candidates for a new default colormap
On Wed, Jun 3, 2015 at 5:08 PM, Nathan Goldbaum nathan12...@gmail.com wrote: I'm a big fan of option D. So much so that when I needed to make a movie of ony my galaxy simulations today I went ahead and used it: https://youtu.be/bnm554et0T8 Beautiful! How hard would it be to also do this for the other proposed colormaps? Stéfan -- ___ Matplotlib-devel mailing list Matplotlib-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-devel
Re: [matplotlib-devel] RFC: candidates for a new default colormap
May I suggest an update to the code showing the 3d sRGB colorspace? Can you add a shade=False to it? Currently, in pycam02ucs.viscm.py, around line 279, it calls the 3d scatter function without the kwarg. This means that mplot3d will apply an alpha transparancy to dots that are farther away to give the perception of depth. Since we actually want to see the correct color, we probably shouldn't have that feature on. Ben Root On Wed, Jun 3, 2015 at 8:17 PM, Stéfan van der Walt ste...@sun.ac.za wrote: On Wed, Jun 3, 2015 at 5:08 PM, Nathan Goldbaum nathan12...@gmail.com wrote: I'm a big fan of option D. So much so that when I needed to make a movie of ony my galaxy simulations today I went ahead and used it: https://youtu.be/bnm554et0T8 Beautiful! How hard would it be to also do this for the other proposed colormaps? Stéfan -- ___ Matplotlib-devel mailing list Matplotlib-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-devel -- ___ Matplotlib-devel mailing list Matplotlib-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-devel
Re: [matplotlib-devel] RFC: candidates for a new default colormap
I'm really digging option D too -- it has the bonus of being unambiguously distinct from GNUPlot, On Wed, Jun 3, 2015 at 5:29 PM, Benjamin Root ben.r...@ou.edu wrote: May I suggest an update to the code showing the 3d sRGB colorspace? Can you add a shade=False to it? Currently, in pycam02ucs.viscm.py, around line 279, it calls the 3d scatter function without the kwarg. This means that mplot3d will apply an alpha transparancy to dots that are farther away to give the perception of depth. Since we actually want to see the correct color, we probably shouldn't have that feature on. Ben Root On Wed, Jun 3, 2015 at 8:17 PM, Stéfan van der Walt ste...@sun.ac.za wrote: On Wed, Jun 3, 2015 at 5:08 PM, Nathan Goldbaum nathan12...@gmail.com wrote: I'm a big fan of option D. So much so that when I needed to make a movie of ony my galaxy simulations today I went ahead and used it: https://youtu.be/bnm554et0T8 Beautiful! How hard would it be to also do this for the other proposed colormaps? Stéfan -- ___ Matplotlib-devel mailing list Matplotlib-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-devel -- ___ Matplotlib-devel mailing list Matplotlib-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-devel -- ___ Matplotlib-devel mailing list Matplotlib-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-devel
Re: [matplotlib-devel] RFC: candidates for a new default colormap
I'm a big fan of option D. So much so that when I needed to make a movie of ony my galaxy simulations today I went ahead and used it: https://youtu.be/bnm554et0T8 On Wed, Jun 3, 2015 at 4:43 PM, Benjamin Root ben.r...@ou.edu wrote: Ooooh, I am liking D a lot. It is almost like what Parula should have been. Still not quite perfect, but I can't put my finger on it. Ben Root On Wed, Jun 3, 2015 at 6:27 PM, Nathaniel Smith n...@pobox.com wrote: On Wed, Jun 3, 2015 at 1:51 PM, Eric Firing efir...@hawaii.edu wrote: On 2015/06/02 7:58 PM, Nathaniel Smith wrote: On Tue, Jun 2, 2015 at 10:03 PM, Paul Ivanov p...@berkeley.edu wrote: That said, if you want to play around with the editor tool, it's linked on the webpage :-). This is a really nice tool! Attached is an example of a map that circles the other direction, and that sacrifices some visual delta for less extreme ends. Although I think the sunrise type of map that you offered in versions A, B, and C is a good one to have in the arsenal, I am not convinced that it should be the only category to be considered as a default. Do we really want to reject the somewhat Parula-like category just because Matlab uses the real Parula? I'm not saying the attached example is particularly good; it is intended to re-introduce the category. (It is somewhat similar to a reversal of our ColorBrewer YlGnBu, so I tried to name it following that scheme.) That is nice! For those following along at home, here's what Eric's colormap looks like: https://bids.github.io/colormap/images/screenshots/erics_PuBuGnYl_r.png We also tried tweaking it a bit to end on a more saturated yellow, which I think helps increase contrast in the deuteranomalous version in particular, and put this on the website as an option D: https://bids.github.io/colormap/images/screenshots/option_d.png We also previously designed a colormap that follows parula's ideas pretty closely, in terms of starting/ending points, overall brightness, and the trick of kinking over through orange at the top end. It ends up being much much more green than parula though: https://bids.github.io/colormap/images/screenshots/fake_parula.png It seems that the fundamental constraints in this map generator tend to yield a somewhat muddy dark end and a muted middle. That's one compromise among many that are possible. You can somewhat avoid the muddy end by bumping up the minimum brightness (option C does this to some extent), but of course that has other trade-offs. -n -- Nathaniel J. Smith -- http://vorpus.org -- ___ Matplotlib-devel mailing list Matplotlib-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-devel -- ___ Matplotlib-devel mailing list Matplotlib-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-devel -- ___ Matplotlib-devel mailing list Matplotlib-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-devel
Re: [matplotlib-devel] RFC: candidates for a new default colormap
I prefer C, but am not too fond of any of them :( I wonder if it would be beneficial to give up a little on the quantitative properties of the cm in favor of moving towards something that is a bit more aesthetic and pleasant to look at. On Wed, Jun 3, 2015 at 1:47 PM, Paul Hobson pmhob...@gmail.com wrote: A brief poll of my office gave 3 A's and a B. One of the A's came from someone who can't remember their distinct flavor of color blindness, but definitely gets tripped up by reds and greens. -p On Wed, Jun 3, 2015 at 1:29 PM, Arnd Baecker arnd.baec...@web.de wrote: In our group I also recieved quite mixed responses: - C B A (2 x) - B A C - A B C - C - B One collegue having anomalous color vision (something between protanomaly and protanopia) called *all* three versions harsh to his eye (like looking into a cars lights at night) and rather unpleasant. He considered C as the least unpleasant, but not that easy to look at. Moreover, he stated that, the parula may be flawed, but at least it doesn’t make one want to look away immediately. Best, Arnd -- ___ Matplotlib-devel mailing list Matplotlib-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-devel -- ___ Matplotlib-devel mailing list Matplotlib-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-devel -- Brian E. Granger Cal Poly State University, San Luis Obispo @ellisonbg on Twitter and GitHub bgran...@calpoly.edu and elliso...@gmail.com -- ___ Matplotlib-devel mailing list Matplotlib-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-devel
Re: [matplotlib-devel] RFC: candidates for a new default colormap
Ooooh, I am liking D a lot. It is almost like what Parula should have been. Still not quite perfect, but I can't put my finger on it. Ben Root On Wed, Jun 3, 2015 at 6:27 PM, Nathaniel Smith n...@pobox.com wrote: On Wed, Jun 3, 2015 at 1:51 PM, Eric Firing efir...@hawaii.edu wrote: On 2015/06/02 7:58 PM, Nathaniel Smith wrote: On Tue, Jun 2, 2015 at 10:03 PM, Paul Ivanov p...@berkeley.edu wrote: That said, if you want to play around with the editor tool, it's linked on the webpage :-). This is a really nice tool! Attached is an example of a map that circles the other direction, and that sacrifices some visual delta for less extreme ends. Although I think the sunrise type of map that you offered in versions A, B, and C is a good one to have in the arsenal, I am not convinced that it should be the only category to be considered as a default. Do we really want to reject the somewhat Parula-like category just because Matlab uses the real Parula? I'm not saying the attached example is particularly good; it is intended to re-introduce the category. (It is somewhat similar to a reversal of our ColorBrewer YlGnBu, so I tried to name it following that scheme.) That is nice! For those following along at home, here's what Eric's colormap looks like: https://bids.github.io/colormap/images/screenshots/erics_PuBuGnYl_r.png We also tried tweaking it a bit to end on a more saturated yellow, which I think helps increase contrast in the deuteranomalous version in particular, and put this on the website as an option D: https://bids.github.io/colormap/images/screenshots/option_d.png We also previously designed a colormap that follows parula's ideas pretty closely, in terms of starting/ending points, overall brightness, and the trick of kinking over through orange at the top end. It ends up being much much more green than parula though: https://bids.github.io/colormap/images/screenshots/fake_parula.png It seems that the fundamental constraints in this map generator tend to yield a somewhat muddy dark end and a muted middle. That's one compromise among many that are possible. You can somewhat avoid the muddy end by bumping up the minimum brightness (option C does this to some extent), but of course that has other trade-offs. -n -- Nathaniel J. Smith -- http://vorpus.org -- ___ Matplotlib-devel mailing list Matplotlib-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-devel -- ___ Matplotlib-devel mailing list Matplotlib-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-devel
Re: [matplotlib-devel] RFC: candidates for a new default colormap
On Wed, Jun 3, 2015 at 1:51 PM, Eric Firing efir...@hawaii.edu wrote: On 2015/06/02 7:58 PM, Nathaniel Smith wrote: On Tue, Jun 2, 2015 at 10:03 PM, Paul Ivanov p...@berkeley.edu wrote: That said, if you want to play around with the editor tool, it's linked on the webpage :-). This is a really nice tool! Attached is an example of a map that circles the other direction, and that sacrifices some visual delta for less extreme ends. Although I think the sunrise type of map that you offered in versions A, B, and C is a good one to have in the arsenal, I am not convinced that it should be the only category to be considered as a default. Do we really want to reject the somewhat Parula-like category just because Matlab uses the real Parula? I'm not saying the attached example is particularly good; it is intended to re-introduce the category. (It is somewhat similar to a reversal of our ColorBrewer YlGnBu, so I tried to name it following that scheme.) That is nice! For those following along at home, here's what Eric's colormap looks like: https://bids.github.io/colormap/images/screenshots/erics_PuBuGnYl_r.png We also tried tweaking it a bit to end on a more saturated yellow, which I think helps increase contrast in the deuteranomalous version in particular, and put this on the website as an option D: https://bids.github.io/colormap/images/screenshots/option_d.png We also previously designed a colormap that follows parula's ideas pretty closely, in terms of starting/ending points, overall brightness, and the trick of kinking over through orange at the top end. It ends up being much much more green than parula though: https://bids.github.io/colormap/images/screenshots/fake_parula.png It seems that the fundamental constraints in this map generator tend to yield a somewhat muddy dark end and a muted middle. That's one compromise among many that are possible. You can somewhat avoid the muddy end by bumping up the minimum brightness (option C does this to some extent), but of course that has other trade-offs. -n -- Nathaniel J. Smith -- http://vorpus.org -- ___ Matplotlib-devel mailing list Matplotlib-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-devel
Re: [matplotlib-devel] RFC: candidates for a new default colormap
On Wed, Jun 3, 2015 at 3:46 AM, Nathaniel Smith n...@pobox.com wrote: Hi all, As was hinted at in a previous thread, Stéfan van der Walt and I have been using some Fancy Color Technology to attempt to design a new colormap intended to become matplotlib's new default. (Down with jet!) Unfortunately, while our Fancy Color Technology includes a computational model of perceptual distance, it does not include a computational model of aesthetics. So this is where you come in. We've put up three reasonable candidates at: https://bids.github.io/colormap/ (along with some well-known colormaps for comparison), and we'd like your feedback. They are all optimal on all of the objective criteria we know how to measure. What we need judgements on is which one you like best, both aesthetically and as a way of visualizing data. (There are some sample plots to look at there, plus you can download them and play with them on your own data if you want.) We especially value input from anyone with anomalous color vision. There are some simulations there, but computational models are inherently limited here. (It's difficult to ask someone with colorblindness does this look to you, the same way this other picture looks to me?) -n I assume these are all going to be available as colormaps? I prefer C, the others seem to dark. Having too much black doesn't strike me as very aesthetically pleasing. So I would say C B A -- ___ Matplotlib-devel mailing list Matplotlib-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-devel
Re: [matplotlib-devel] RFC: candidates for a new default colormap
Andreas, sure, it would only be available in colour. But there's other ways to mark NaNs, which, after all, should be exceptional, not a major chunk of your data. I don't know enough about your use-case to comment on an exact solution but I do think that NaN display should not drive design. I second Todd though — I would really love to have all of these available so people can choose. But the issue of branding with the default is also important, so that doesn't diminish the discussion ahead... Which looks like it will be intense! =) Juan. On Wed, Jun 3, 2015 at 5:04 PM, Andreas Hilboll li...@hilboll.de wrote: On 03.06.2015 08:54, Juan Nunez-Iglesias wrote: You can always use green for NaN with any of these maps... In grayscale that then wouldn't be distinguishable at all ... On Wed, Jun 3, 2015 at 4:30 PM, Andreas Hilboll li...@hilboll.de mailto:li...@hilboll.de wrote: I particularly like that A ends on the white end of the spectrum That's exactly why I don't like A that much. In many plots, I need a color for NaN results. This color should not fall within the normal range of the colormap. In case of B and C, it would be possible to use white as NaN color. When using white for NaN in A, it would just look like large values. So I guess I'm voting B C A -- Andreas. -- ___ Matplotlib-devel mailing list Matplotlib-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-devel -- -- Andreas. -- ___ Matplotlib-devel mailing list Matplotlib-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-devel -- ___ Matplotlib-devel mailing list Matplotlib-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-devel
Re: [matplotlib-devel] RFC: candidates for a new default colormap
Personally, just looking at the images I think B looks more professional, the others look faded. With A and B I see more of contrast in the core of the radial image (though that might arise from a combination of my monitor/eyes, though I usually do quite well in colour perception tests). I think we really need to see a variety of real examples before we make a decision though, both in application a.k.a different type of datasets, including ones with NaNs; and different graph types, the 3d example will make for a good test as we get the same information twice, from height and colour, which gives us a reference for comparison. With the NaNs Andreas, why did you pick B over C? My eyes see B going to white as well, only C as far as I can tell does not go to white. Looking forward to having a play later :). I wonder what Parula-based colormap would look like if we were to make it linear... one other thing, mpl currently doesn't select good bounds with pure horizontal/vertical lines, making it very difficult (at least for me) to see the perceptual deltas, zoomed in to option_c the line gets completely hidden by the axes... On 03/06/15 09:04, Andreas Hilboll wrote: On 03.06.2015 08:54, Juan Nunez-Iglesias wrote: You can always use green for NaN with any of these maps... In grayscale that then wouldn't be distinguishable at all ... On Wed, Jun 3, 2015 at 4:30 PM, Andreas Hilboll li...@hilboll.de mailto:li...@hilboll.de wrote: I particularly like that A ends on the white end of the spectrum That's exactly why I don't like A that much. In many plots, I need a color for NaN results. This color should not fall within the normal range of the colormap. In case of B and C, it would be possible to use white as NaN color. When using white for NaN in A, it would just look like large values. So I guess I'm voting B C A -- Andreas. -- ___ Matplotlib-devel mailing list Matplotlib-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-devel -- ___ Matplotlib-devel mailing list Matplotlib-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-devel
Re: [matplotlib-devel] RFC: candidates for a new default colormap
On 03.06.2015 08:54, Juan Nunez-Iglesias wrote: You can always use green for NaN with any of these maps... In grayscale that then wouldn't be distinguishable at all ... On Wed, Jun 3, 2015 at 4:30 PM, Andreas Hilboll li...@hilboll.de mailto:li...@hilboll.de wrote: I particularly like that A ends on the white end of the spectrum That's exactly why I don't like A that much. In many plots, I need a color for NaN results. This color should not fall within the normal range of the colormap. In case of B and C, it would be possible to use white as NaN color. When using white for NaN in A, it would just look like large values. So I guess I'm voting B C A -- Andreas. -- ___ Matplotlib-devel mailing list Matplotlib-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-devel -- -- Andreas. -- ___ Matplotlib-devel mailing list Matplotlib-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-devel
Re: [matplotlib-devel] RFC: candidates for a new default colormap
I particularly like that A ends on the white end of the spectrum That's exactly why I don't like A that much. In many plots, I need a color for NaN results. This color should not fall within the normal range of the colormap. In case of B and C, it would be possible to use white as NaN color. When using white for NaN in A, it would just look like large values. So I guess I'm voting B C A -- Andreas. -- ___ Matplotlib-devel mailing list Matplotlib-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-devel
Re: [matplotlib-devel] RFC: candidates for a new default colormap
You can always use green for NaN with any of these maps... — Sent from Mailbox On Wed, Jun 3, 2015 at 4:30 PM, Andreas Hilboll li...@hilboll.de wrote: I particularly like that A ends on the white end of the spectrum That's exactly why I don't like A that much. In many plots, I need a color for NaN results. This color should not fall within the normal range of the colormap. In case of B and C, it would be possible to use white as NaN color. When using white for NaN in A, it would just look like large values. So I guess I'm voting B C A -- Andreas. -- ___ Matplotlib-devel mailing list Matplotlib-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-devel-- ___ Matplotlib-devel mailing list Matplotlib-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-devel
Re: [matplotlib-devel] RFC: candidates for a new default colormap
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 I'm also in the B A C camp, FWIW. I agree with OceanWolf in that B looks most professional. It looks much crisper than the others as well. On 6/3/2015 08:50, Tony Yu wrote: It doesn't sound like this is going to be decided by email votes, but just so the arguments for C don't dominate, my vote would be: B A C C has the least perceptual range (that's quantifiable, right?). Also, I find A and B much more aesthetically pleasing (that's obviously debatable). In particular, the yellows and blues in C have a slight visual vibration. Actually, if you google visual vibration, one of the first hits is a yellow and violet image https://web.njit.edu/~mmp57/visual%20vibration.jpg. B would have this to a certain extent, but it's much more problematic if those colors are at the limits of the colormap range. It looks like A wouldn't have this problem at all since it's white point has a very muted yellow tone, so maybe I'll switch my vote to A. (Personally, it's a toss up between the two; anything but C, if I haven't made myself clear ;) Thanks to Nathaniel and Stéfan for putting this together! Hopefully jet can be banished soon :) -Tony On Wed, Jun 3, 2015 at 5:20 AM, OceanWolf juichenieder-n...@yahoo.co.uk mailto:juichenieder-n...@yahoo.co.uk wrote: Personally, just looking at the images I think B looks more professional, the others look faded. With A and B I see more of contrast in the core of the radial image (though that might arise from a combination of my monitor/eyes, though I usually do quite well in colour perception tests). I think we really need to see a variety of real examples before we make a decision though, both in application a.k.a different type of datasets, including ones with NaNs; and different graph types, the 3d example will make for a good test as we get the same information twice, from height and colour, which gives us a reference for comparison. With the NaNs Andreas, why did you pick B over C? My eyes see B going to white as well, only C as far as I can tell does not go to white. Looking forward to having a play later :). I wonder what Parula-based colormap would look like if we were to make it linear... one other thing, mpl currently doesn't select good bounds with pure horizontal/vertical lines, making it very difficult (at least for me) to see the perceptual deltas, zoomed in to option_c the line gets completely hidden by the axes... On 03/06/15 09:04, Andreas Hilboll wrote: On 03.06.2015 08:54, Juan Nunez-Iglesias wrote: You can always use green for NaN with any of these maps... In grayscale that then wouldn't be distinguishable at all ... On Wed, Jun 3, 2015 at 4:30 PM, Andreas Hilboll li...@hilboll.de mailto:li...@hilboll.de mailto:li...@hilboll.de mailto:li...@hilboll.de wrote: I particularly like that A ends on the white end of the spectrum That's exactly why I don't like A that much. In many plots, I need a color for NaN results. This color should not fall within the normal range of the colormap. In case of B and C, it would be possible to use white as NaN color. When using white for NaN in A, it would just look like large values. So I guess I'm voting B C A -- Andreas. -- ___ Matplotlib-devel mailing list Matplotlib-devel@lists.sourceforge.net mailto:Matplotlib-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-devel -- ___ Matplotlib-devel mailing list Matplotlib-devel@lists.sourceforge.net mailto:Matplotlib-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-devel -- ___ Matplotlib-devel mailing list Matplotlib-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-devel -BEGIN PGP SIGNATURE- Version: GnuPG v2.0.22 (MingW32) iQIcBAEBAgAGBQJVbwc8AAoJEM1U/OPZZL77c5oP/1KSJloy7ZBVyCOb2Dv2w7fM +cQAHlSBgzff+/hYf4/vDjvo0MOomP3xq7PwjA5Jeg3eln+Y9wDwarCDWZK5+Kh7 uDil3Rdtx+yC3vUqrICHQkh6Y6b5xiv6eTAV06UA2sUM4TRnXIuLSCCnR/2ntbiY NGyl7/NPFeYmFJHtGnMmNLhVIZV5a01oc7J6xb/CqQhuYzzi3NwN2tuS27+ouG2G dOXWXn/f2DdHYONXyjFHQG5NeVxm50r27wZkdk9xhfmo7FaI2939xZQfbeFqUdAO qspHwddr0PGIQCU8nr/CCzQ93fMPkd3cM3e4Sn1Ulq2yDuQXLIISBkA7ufi45yPt q1pmFiv9La6vbZZzLLJ47c90fQ1NAe3Jdj4z1x6H4ZhZe8I2zgBhOO4m8meh+gU6
Re: [matplotlib-devel] RFC: candidates for a new default colormap
It doesn't sound like this is going to be decided by email votes, but just so the arguments for C don't dominate, my vote would be: B A C C has the least perceptual range (that's quantifiable, right?). Also, I find A and B much more aesthetically pleasing (that's obviously debatable). In particular, the yellows and blues in C have a slight visual vibration. Actually, if you google visual vibration, one of the first hits is a yellow and violet image https://web.njit.edu/~mmp57/visual%20vibration.jpg. B would have this to a certain extent, but it's much more problematic if those colors are at the limits of the colormap range. It looks like A wouldn't have this problem at all since it's white point has a very muted yellow tone, so maybe I'll switch my vote to A. (Personally, it's a toss up between the two; anything but C, if I haven't made myself clear ;) Thanks to Nathaniel and Stéfan for putting this together! Hopefully jet can be banished soon :) -Tony On Wed, Jun 3, 2015 at 5:20 AM, OceanWolf juichenieder-n...@yahoo.co.uk wrote: Personally, just looking at the images I think B looks more professional, the others look faded. With A and B I see more of contrast in the core of the radial image (though that might arise from a combination of my monitor/eyes, though I usually do quite well in colour perception tests). I think we really need to see a variety of real examples before we make a decision though, both in application a.k.a different type of datasets, including ones with NaNs; and different graph types, the 3d example will make for a good test as we get the same information twice, from height and colour, which gives us a reference for comparison. With the NaNs Andreas, why did you pick B over C? My eyes see B going to white as well, only C as far as I can tell does not go to white. Looking forward to having a play later :). I wonder what Parula-based colormap would look like if we were to make it linear... one other thing, mpl currently doesn't select good bounds with pure horizontal/vertical lines, making it very difficult (at least for me) to see the perceptual deltas, zoomed in to option_c the line gets completely hidden by the axes... On 03/06/15 09:04, Andreas Hilboll wrote: On 03.06.2015 08:54, Juan Nunez-Iglesias wrote: You can always use green for NaN with any of these maps... In grayscale that then wouldn't be distinguishable at all ... On Wed, Jun 3, 2015 at 4:30 PM, Andreas Hilboll li...@hilboll.de mailto:li...@hilboll.de wrote: I particularly like that A ends on the white end of the spectrum That's exactly why I don't like A that much. In many plots, I need a color for NaN results. This color should not fall within the normal range of the colormap. In case of B and C, it would be possible to use white as NaN color. When using white for NaN in A, it would just look like large values. So I guess I'm voting B C A -- Andreas. -- ___ Matplotlib-devel mailing list Matplotlib-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-devel -- ___ Matplotlib-devel mailing list Matplotlib-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-devel -- ___ Matplotlib-devel mailing list Matplotlib-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-devel
Re: [matplotlib-devel] RFC: candidates for a new default colormap
One of the big advantage of jet as evidenced by these graphs is that for most of its range, the perceptual delta is above 200 (although it loses that advantage in blackwhite). Parula sacrafices a fair amount of perceptual delta, but stays mostly above 100. All of the options beat or matches Parula in this respect overall, even in BW mode. However, I wonder just how much should we hold fast to a constant perceptual delta? As we see with grayscale, perceptual delta is not constant with respect to luminosity. Keep in mind that our perceptual delta measure is just a model, and I don't think it properly takes into account luminosity. So, perhaps it might make sense to be a little bit flexible with perceptual delta (maybe something like an exponental decay). Nothing jerky like Parula or Jet, but something to help us out on the ends of the map? By the way, I have seen Parula in action for the display of water vapor over Africa, and it looks very nice. Perhaps a real-world example image might be some sort of geographical map of something familiar across all disciplines like a terrain map of a continent? Ben Root On Wed, Jun 3, 2015 at 9:55 AM, Paul Ganssle pgans...@gmail.com wrote: -BEGIN PGP SIGNED MESSAGE- Hash: SHA1 I'm also in the B A C camp, FWIW. I agree with OceanWolf in that B looks most professional. It looks much crisper than the others as well. On 6/3/2015 08:50, Tony Yu wrote: It doesn't sound like this is going to be decided by email votes, but just so the arguments for C don't dominate, my vote would be: B A C C has the least perceptual range (that's quantifiable, right?). Also, I find A and B much more aesthetically pleasing (that's obviously debatable). In particular, the yellows and blues in C have a slight visual vibration. Actually, if you google visual vibration, one of the first hits is a yellow and violet image https://web.njit.edu/~mmp57/visual%20vibration.jpg https://web.njit.edu/~mmp57/visual%20vibration.jpg. B would have this to a certain extent, but it's much more problematic if those colors are at the limits of the colormap range. It looks like A wouldn't have this problem at all since it's white point has a very muted yellow tone, so maybe I'll switch my vote to A. (Personally, it's a toss up between the two; anything but C, if I haven't made myself clear ;) Thanks to Nathaniel and Stéfan for putting this together! Hopefully jet can be banished soon :) -Tony On Wed, Jun 3, 2015 at 5:20 AM, OceanWolf juichenieder-n...@yahoo.co.uk mailto:juichenieder-n...@yahoo.co.uk juichenieder-n...@yahoo.co.uk wrote: Personally, just looking at the images I think B looks more professional, the others look faded. With A and B I see more of contrast in the core of the radial image (though that might arise from a combination of my monitor/eyes, though I usually do quite well in colour perception tests). I think we really need to see a variety of real examples before we make a decision though, both in application a.k.a different type of datasets, including ones with NaNs; and different graph types, the 3d example will make for a good test as we get the same information twice, from height and colour, which gives us a reference for comparison. With the NaNs Andreas, why did you pick B over C? My eyes see B going to white as well, only C as far as I can tell does not go to white. Looking forward to having a play later :). I wonder what Parula-based colormap would look like if we were to make it linear... one other thing, mpl currently doesn't select good bounds with pure horizontal/vertical lines, making it very difficult (at least for me) to see the perceptual deltas, zoomed in to option_c the line gets completely hidden by the axes... On 03/06/15 09:04, Andreas Hilboll wrote: On 03.06.2015 08:54, Juan Nunez-Iglesias wrote: You can always use green for NaN with any of these maps... In grayscale that then wouldn't be distinguishable at all ... On Wed, Jun 3, 2015 at 4:30 PM, Andreas Hilboll li...@hilboll.de mailto:li...@hilboll.de li...@hilboll.de mailto:li...@hilboll.de li...@hilboll.de mailto:li...@hilboll.de li...@hilboll.de wrote: I particularly like that A ends on the white end of the spectrum That's exactly why I don't like A that much. In many plots, I need a color for NaN results. This color should not fall within the normal range of the colormap. In case of B and C, it would be possible to use white as NaN color. When using white for NaN in A, it would just look like large values. So I guess I'm voting B C A -- Andreas. --
Re: [matplotlib-devel] RFC: candidates for a new default colormap
Just want to chime in and say that they colorblind versions of the maps are pretty nice too. Can those be made available? It also occurs to me that these are pretty similar to the existing colormap GNUPlot. I don't know if that's good or bad, but something to keep in mind if the desire is for matplotlib to standout away from other plotting packages. -p On Wed, Jun 3, 2015 at 8:38 AM, Benjamin Root ben.r...@ou.edu wrote: One of the big advantage of jet as evidenced by these graphs is that for most of its range, the perceptual delta is above 200 (although it loses that advantage in blackwhite). Parula sacrafices a fair amount of perceptual delta, but stays mostly above 100. All of the options beat or matches Parula in this respect overall, even in BW mode. However, I wonder just how much should we hold fast to a constant perceptual delta? As we see with grayscale, perceptual delta is not constant with respect to luminosity. Keep in mind that our perceptual delta measure is just a model, and I don't think it properly takes into account luminosity. So, perhaps it might make sense to be a little bit flexible with perceptual delta (maybe something like an exponental decay). Nothing jerky like Parula or Jet, but something to help us out on the ends of the map? By the way, I have seen Parula in action for the display of water vapor over Africa, and it looks very nice. Perhaps a real-world example image might be some sort of geographical map of something familiar across all disciplines like a terrain map of a continent? Ben Root On Wed, Jun 3, 2015 at 9:55 AM, Paul Ganssle pgans...@gmail.com wrote: -BEGIN PGP SIGNED MESSAGE- Hash: SHA1 I'm also in the B A C camp, FWIW. I agree with OceanWolf in that B looks most professional. It looks much crisper than the others as well. On 6/3/2015 08:50, Tony Yu wrote: It doesn't sound like this is going to be decided by email votes, but just so the arguments for C don't dominate, my vote would be: B A C C has the least perceptual range (that's quantifiable, right?). Also, I find A and B much more aesthetically pleasing (that's obviously debatable). In particular, the yellows and blues in C have a slight visual vibration. Actually, if you google visual vibration, one of the first hits is a yellow and violet image https://web.njit.edu/~mmp57/visual%20vibration.jpg https://web.njit.edu/~mmp57/visual%20vibration.jpg. B would have this to a certain extent, but it's much more problematic if those colors are at the limits of the colormap range. It looks like A wouldn't have this problem at all since it's white point has a very muted yellow tone, so maybe I'll switch my vote to A. (Personally, it's a toss up between the two; anything but C, if I haven't made myself clear ;) Thanks to Nathaniel and Stéfan for putting this together! Hopefully jet can be banished soon :) -Tony On Wed, Jun 3, 2015 at 5:20 AM, OceanWolf juichenieder-n...@yahoo.co.uk mailto:juichenieder-n...@yahoo.co.uk juichenieder-n...@yahoo.co.uk wrote: Personally, just looking at the images I think B looks more professional, the others look faded. With A and B I see more of contrast in the core of the radial image (though that might arise from a combination of my monitor/eyes, though I usually do quite well in colour perception tests). I think we really need to see a variety of real examples before we make a decision though, both in application a.k.a different type of datasets, including ones with NaNs; and different graph types, the 3d example will make for a good test as we get the same information twice, from height and colour, which gives us a reference for comparison. With the NaNs Andreas, why did you pick B over C? My eyes see B going to white as well, only C as far as I can tell does not go to white. Looking forward to having a play later :). I wonder what Parula-based colormap would look like if we were to make it linear... one other thing, mpl currently doesn't select good bounds with pure horizontal/vertical lines, making it very difficult (at least for me) to see the perceptual deltas, zoomed in to option_c the line gets completely hidden by the axes... On 03/06/15 09:04, Andreas Hilboll wrote: On 03.06.2015 08:54, Juan Nunez-Iglesias wrote: You can always use green for NaN with any of these maps... In grayscale that then wouldn't be distinguishable at all ... On Wed, Jun 3, 2015 at 4:30 PM, Andreas Hilboll li...@hilboll.de mailto:li...@hilboll.de li...@hilboll.de mailto:li...@hilboll.de li...@hilboll.de mailto:li...@hilboll.de li...@hilboll.de wrote: I particularly like that A ends on the white end of the spectrum That's exactly why I don't like A that much. In many plots, I need a color
Re: [matplotlib-devel] RFC: candidates for a new default colormap
Great work! Very nice post describing the methodology. I especially like the choice of images you used to expose differences between colormaps. My ranking is: 1. C 2. A 3. B To my eyes, C has the highest dynamic range (somehow the opposite of Eric!) and I like the purple/blue undertone in the dark colors. On Tue, Jun 2, 2015 at 8:00 PM Eric Firing efir...@hawaii.edu wrote: On 2015/06/02 3:46 PM, Nathaniel Smith wrote: Hi all, As was hinted at in a previous thread, Stéfan van der Walt and I have been using some Fancy Color Technology to attempt to design a new colormap intended to become matplotlib's new default. (Down with jet!) Unfortunately, while our Fancy Color Technology includes a computational model of perceptual distance, it does not include a computational model of aesthetics. So this is where you come in. We've put up three reasonable candidates at: https://bids.github.io/colormap/ (along with some well-known colormaps for comparison), and we'd like your feedback. Thank you! I am leaning toward B; to me, it seems to have a little more dynamic range than the other two, and a better range and balance of colors. I can imagine situations in which A or C might be better; we can have all three available as named options, but I think B will server best as the default. Eric -- ___ Matplotlib-devel mailing list Matplotlib-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-devel -- ___ Matplotlib-devel mailing list Matplotlib-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-devel
Re: [matplotlib-devel] RFC: candidates for a new default colormap
On Tue, Jun 2, 2015 at 9:01 PM, Olga Botvinnik obotv...@ucsd.edu wrote: Great work! Very nice post describing the methodology. I especially like the choice of images you used to expose differences between colormaps. Thanks! My ranking is: 1. C 2. A 3. B To my eyes, C has the highest dynamic range (somehow the opposite of Eric!) and I like the purple/blue undertone in the dark colors. Unfortunately it's going to depend a bit on individual variations in monitors (and eyes!). Bonus points for anyone who sends in feedback based on viewing the test images on your department's most terrible projector :-). -n -- Nathaniel J. Smith -- http://vorpus.org -- ___ Matplotlib-devel mailing list Matplotlib-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-devel
Re: [matplotlib-devel] RFC: candidates for a new default colormap
Sorry for send you two emails, Nathaniel. I'm going to vote for A with C as a close second. Of the three, B looks the most bandy to me (but not overly so). -p On Tue, Jun 2, 2015 at 6:46 PM, Nathaniel Smith n...@pobox.com wrote: Hi all, As was hinted at in a previous thread, Stéfan van der Walt and I have been using some Fancy Color Technology to attempt to design a new colormap intended to become matplotlib's new default. (Down with jet!) Unfortunately, while our Fancy Color Technology includes a computational model of perceptual distance, it does not include a computational model of aesthetics. So this is where you come in. We've put up three reasonable candidates at: https://bids.github.io/colormap/ (along with some well-known colormaps for comparison), and we'd like your feedback. They are all optimal on all of the objective criteria we know how to measure. What we need judgements on is which one you like best, both aesthetically and as a way of visualizing data. (There are some sample plots to look at there, plus you can download them and play with them on your own data if you want.) We especially value input from anyone with anomalous color vision. There are some simulations there, but computational models are inherently limited here. (It's difficult to ask someone with colorblindness does this look to you, the same way this other picture looks to me?) -n -- Nathaniel J. Smith -- http://vorpus.org -- ___ Matplotlib-devel mailing list Matplotlib-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-devel -- ___ Matplotlib-devel mailing list Matplotlib-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-devel
Re: [matplotlib-devel] RFC: candidates for a new default colormap
On 2015/06/02 3:46 PM, Nathaniel Smith wrote: Hi all, As was hinted at in a previous thread, Stéfan van der Walt and I have been using some Fancy Color Technology to attempt to design a new colormap intended to become matplotlib's new default. (Down with jet!) Unfortunately, while our Fancy Color Technology includes a computational model of perceptual distance, it does not include a computational model of aesthetics. So this is where you come in. We've put up three reasonable candidates at: https://bids.github.io/colormap/ (along with some well-known colormaps for comparison), and we'd like your feedback. Thank you! I am leaning toward B; to me, it seems to have a little more dynamic range than the other two, and a better range and balance of colors. I can imagine situations in which A or C might be better; we can have all three available as named options, but I think B will server best as the default. Eric -- ___ Matplotlib-devel mailing list Matplotlib-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-devel
Re: [matplotlib-devel] RFC: candidates for a new default colormap
1. C 2. B 3. A But I wouldn't call them aesthetic - the purple in there just looks off - I'd prefer something like hot, afmhot, or gist_heat - or variations on those. Since this thread is bound to get plenty of attention (I suggest getting feedback from -users, too), we would be remiss if we didn't point those who didn't already see the writeup of colormaps that Kristen Thyng and colleagues did in the docs [1]. Also, I added a pointer to this thread over on #875 [2]. 1. http://matplotlib.org/users/colormaps.html 2. https://github.com/matplotlib/matplotlib/issues/875 -- ___ Matplotlib-devel mailing list Matplotlib-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-devel
Re: [matplotlib-devel] RFC: candidates for a new default colormap
It's astonishing how many different opinions we have! Anyway, first of all, a big thank you to Nathaniel and Stéfan for some kick-ass work. I'm amazed at the perceptual delta results for Parula... 8-O Good to know that MPL will not make the same mistake. Second, my preferences: A B C. I particularly like that A ends on the white end of the spectrum, giving it a softer look and a better gradation in grayscale. I'd discard C out of hand because it doesn't span the full luminance range, which is measured by the much lower total perceptual delta in grayscale mode. I'd also discard Paul's vote out of hand since he voted for C. =P Finally, here's a nice wikipedia article to tally the votes: https://en.wikipedia.org/wiki/Condorcet_criterion ;) Juan. On Wed, Jun 3, 2015 at 3:03 PM, Paul Ivanov p...@berkeley.edu wrote: 1. C 2. B 3. A But I wouldn't call them aesthetic - the purple in there just looks off - I'd prefer something like hot, afmhot, or gist_heat - or variations on those. Since this thread is bound to get plenty of attention (I suggest getting feedback from -users, too), we would be remiss if we didn't point those who didn't already see the writeup of colormaps that Kristen Thyng and colleagues did in the docs [1]. Also, I added a pointer to this thread over on #875 [2]. 1. http://matplotlib.org/users/colormaps.html 2. https://github.com/matplotlib/matplotlib/issues/875 -- ___ Matplotlib-devel mailing list Matplotlib-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-devel -- ___ Matplotlib-devel mailing list Matplotlib-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-devel
Re: [matplotlib-devel] RFC: candidates for a new default colormap
On Tue, Jun 2, 2015 at 10:03 PM, Paul Ivanov p...@berkeley.edu wrote: 1. C 2. B 3. A But I wouldn't call them aesthetic - the purple in there just looks off - I'd prefer something like hot, afmhot, or gist_heat - or variations on those. It turns out that it's very difficult to go ~blue to anything like a red to ~white/yellow, while keeping to our other constraints (perceptual uniformity in both color and black-and-white). The problem is that red is way off in a corner of the sRGB color space -- basically anything near red but brighter takes you outside of sRGB. But you *must* get brighter at a constant rate, while you can only move away from the corner at a fixed speed, so you tend to overshoot... That said, if you want to play around with the editor tool, it's linked on the webpage :-). Drag to move spline control points, shift-click to add a control point, control-click to delete a control point, bottom bars let you set the min/max lightness, and click the colormap on the side to select which hue/saturation slice of color space you want the left pane to show. (The game is to keep the yellow dot inside the slice.) If it starts acting weird try tapping your modifier keys, sometimes that fixes things. Since this thread is bound to get plenty of attention (I suggest getting feedback from -users, too), we would be remiss if we didn't point those who didn't already see the writeup of colormaps that Kristen Thyng and colleagues did in the docs [1]. Also, I added a pointer to this thread over on #875 [2]. 1. http://matplotlib.org/users/colormaps.html 2. https://github.com/matplotlib/matplotlib/issues/875 I'm not on -users, but please do distribute the link far and wide to whoever you think might be interested! With, again, major bonus points for feedback on colorblindness-friendliness and readability under adverse display conditions like lousy projectors, since IMO at this point they're all pretty decent when viewed under optimal conditions. -n -- Nathaniel J. Smith -- http://vorpus.org -- ___ Matplotlib-devel mailing list Matplotlib-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/matplotlib-devel