_cm_multivar.py 6.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166
  1. # auto-generated by https://github.com/trygvrad/multivariate_colormaps
  2. # date: 2024-05-28
  3. from .colors import LinearSegmentedColormap, MultivarColormap
  4. import matplotlib as mpl
  5. _LUTSIZE = mpl.rcParams['image.lut']
  6. _2VarAddA0_data = [[0.000, 0.000, 0.000],
  7. [0.020, 0.026, 0.031],
  8. [0.049, 0.068, 0.085],
  9. [0.075, 0.107, 0.135],
  10. [0.097, 0.144, 0.183],
  11. [0.116, 0.178, 0.231],
  12. [0.133, 0.212, 0.279],
  13. [0.148, 0.244, 0.326],
  14. [0.161, 0.276, 0.374],
  15. [0.173, 0.308, 0.422],
  16. [0.182, 0.339, 0.471],
  17. [0.190, 0.370, 0.521],
  18. [0.197, 0.400, 0.572],
  19. [0.201, 0.431, 0.623],
  20. [0.204, 0.461, 0.675],
  21. [0.204, 0.491, 0.728],
  22. [0.202, 0.520, 0.783],
  23. [0.197, 0.549, 0.838],
  24. [0.187, 0.577, 0.895]]
  25. _2VarAddA1_data = [[0.000, 0.000, 0.000],
  26. [0.030, 0.023, 0.018],
  27. [0.079, 0.060, 0.043],
  28. [0.125, 0.093, 0.065],
  29. [0.170, 0.123, 0.083],
  30. [0.213, 0.151, 0.098],
  31. [0.255, 0.177, 0.110],
  32. [0.298, 0.202, 0.120],
  33. [0.341, 0.226, 0.128],
  34. [0.384, 0.249, 0.134],
  35. [0.427, 0.271, 0.138],
  36. [0.472, 0.292, 0.141],
  37. [0.517, 0.313, 0.142],
  38. [0.563, 0.333, 0.141],
  39. [0.610, 0.353, 0.139],
  40. [0.658, 0.372, 0.134],
  41. [0.708, 0.390, 0.127],
  42. [0.759, 0.407, 0.118],
  43. [0.813, 0.423, 0.105]]
  44. _2VarSubA0_data = [[1.000, 1.000, 1.000],
  45. [0.959, 0.973, 0.986],
  46. [0.916, 0.948, 0.974],
  47. [0.874, 0.923, 0.965],
  48. [0.832, 0.899, 0.956],
  49. [0.790, 0.875, 0.948],
  50. [0.748, 0.852, 0.940],
  51. [0.707, 0.829, 0.934],
  52. [0.665, 0.806, 0.927],
  53. [0.624, 0.784, 0.921],
  54. [0.583, 0.762, 0.916],
  55. [0.541, 0.740, 0.910],
  56. [0.500, 0.718, 0.905],
  57. [0.457, 0.697, 0.901],
  58. [0.414, 0.675, 0.896],
  59. [0.369, 0.652, 0.892],
  60. [0.320, 0.629, 0.888],
  61. [0.266, 0.604, 0.884],
  62. [0.199, 0.574, 0.881]]
  63. _2VarSubA1_data = [[1.000, 1.000, 1.000],
  64. [0.982, 0.967, 0.955],
  65. [0.966, 0.935, 0.908],
  66. [0.951, 0.902, 0.860],
  67. [0.937, 0.870, 0.813],
  68. [0.923, 0.838, 0.765],
  69. [0.910, 0.807, 0.718],
  70. [0.898, 0.776, 0.671],
  71. [0.886, 0.745, 0.624],
  72. [0.874, 0.714, 0.577],
  73. [0.862, 0.683, 0.530],
  74. [0.851, 0.653, 0.483],
  75. [0.841, 0.622, 0.435],
  76. [0.831, 0.592, 0.388],
  77. [0.822, 0.561, 0.340],
  78. [0.813, 0.530, 0.290],
  79. [0.806, 0.498, 0.239],
  80. [0.802, 0.464, 0.184],
  81. [0.801, 0.426, 0.119]]
  82. _3VarAddA0_data = [[0.000, 0.000, 0.000],
  83. [0.018, 0.023, 0.028],
  84. [0.040, 0.056, 0.071],
  85. [0.059, 0.087, 0.110],
  86. [0.074, 0.114, 0.147],
  87. [0.086, 0.139, 0.183],
  88. [0.095, 0.163, 0.219],
  89. [0.101, 0.187, 0.255],
  90. [0.105, 0.209, 0.290],
  91. [0.107, 0.230, 0.326],
  92. [0.105, 0.251, 0.362],
  93. [0.101, 0.271, 0.398],
  94. [0.091, 0.291, 0.434],
  95. [0.075, 0.309, 0.471],
  96. [0.046, 0.325, 0.507],
  97. [0.021, 0.341, 0.546],
  98. [0.021, 0.363, 0.584],
  99. [0.022, 0.385, 0.622],
  100. [0.023, 0.408, 0.661]]
  101. _3VarAddA1_data = [[0.000, 0.000, 0.000],
  102. [0.020, 0.024, 0.016],
  103. [0.047, 0.058, 0.034],
  104. [0.072, 0.088, 0.048],
  105. [0.093, 0.116, 0.059],
  106. [0.113, 0.142, 0.067],
  107. [0.131, 0.167, 0.071],
  108. [0.149, 0.190, 0.074],
  109. [0.166, 0.213, 0.074],
  110. [0.182, 0.235, 0.072],
  111. [0.198, 0.256, 0.068],
  112. [0.215, 0.276, 0.061],
  113. [0.232, 0.296, 0.051],
  114. [0.249, 0.314, 0.037],
  115. [0.270, 0.330, 0.018],
  116. [0.288, 0.347, 0.000],
  117. [0.302, 0.369, 0.000],
  118. [0.315, 0.391, 0.000],
  119. [0.328, 0.414, 0.000]]
  120. _3VarAddA2_data = [[0.000, 0.000, 0.000],
  121. [0.029, 0.020, 0.023],
  122. [0.072, 0.045, 0.055],
  123. [0.111, 0.067, 0.084],
  124. [0.148, 0.085, 0.109],
  125. [0.184, 0.101, 0.133],
  126. [0.219, 0.115, 0.155],
  127. [0.254, 0.127, 0.176],
  128. [0.289, 0.138, 0.195],
  129. [0.323, 0.147, 0.214],
  130. [0.358, 0.155, 0.232],
  131. [0.393, 0.161, 0.250],
  132. [0.429, 0.166, 0.267],
  133. [0.467, 0.169, 0.283],
  134. [0.507, 0.168, 0.298],
  135. [0.546, 0.168, 0.313],
  136. [0.580, 0.172, 0.328],
  137. [0.615, 0.175, 0.341],
  138. [0.649, 0.178, 0.355]]
  139. cmaps = {
  140. name: LinearSegmentedColormap.from_list(name, data, _LUTSIZE) for name, data in [
  141. ('2VarAddA0', _2VarAddA0_data),
  142. ('2VarAddA1', _2VarAddA1_data),
  143. ('2VarSubA0', _2VarSubA0_data),
  144. ('2VarSubA1', _2VarSubA1_data),
  145. ('3VarAddA0', _3VarAddA0_data),
  146. ('3VarAddA1', _3VarAddA1_data),
  147. ('3VarAddA2', _3VarAddA2_data),
  148. ]}
  149. cmap_families = {
  150. '2VarAddA': MultivarColormap([cmaps[f'2VarAddA{i}'] for i in range(2)],
  151. 'sRGB_add', name='2VarAddA'),
  152. '2VarSubA': MultivarColormap([cmaps[f'2VarSubA{i}'] for i in range(2)],
  153. 'sRGB_sub', name='2VarSubA'),
  154. '3VarAddA': MultivarColormap([cmaps[f'3VarAddA{i}'] for i in range(3)],
  155. 'sRGB_add', name='3VarAddA'),
  156. }