├── .gitignore ├── LICENSE ├── Makefile ├── README.md ├── browser.js ├── build.js ├── example ├── d3-random-matrix.js ├── example.png ├── gradients.js └── package.json ├── hex ├── inferno.json ├── magma.json ├── plasma.json └── viridis.json ├── inferno.js ├── magma.js ├── package.json ├── plasma.js ├── rgb ├── inferno.json ├── magma.json ├── plasma.json └── viridis.json ├── utils ├── hex2rgb.js ├── interpolate.js └── rgb2hex.js └── viridis.js /.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | Copyright (c) 2015, Politiken Journalism 2 | 3 | Permission to use, copy, modify, and/or distribute this software for any 4 | purpose with or without fee is hereby granted, provided that the above 5 | copyright notice and this permission notice appear in all copies. 6 | 7 | THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES 8 | WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF 9 | MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR 10 | ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES 11 | WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN 12 | ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF 13 | OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. 14 | -------------------------------------------------------------------------------- /Makefile: -------------------------------------------------------------------------------- 1 | RGB_DATA = $(wildcard rgb/*.json) 2 | HEX_DATA = $(addprefix hex/,$(notdir $(RGB_DATA))) 3 | 4 | all: $(HEX_DATA) 5 | 6 | hex: 7 | mkdir -p hex 8 | 9 | hex/%.json: rgb/%.json hex 10 | node build $(abspath $<) > $@ 11 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | `scale-color-perceptual` 2 | ======================== 3 | 4 | > Javascript exports of matplotlib's new default color scales; inferno, magma, plasma and viridis. Works with browserify and D3.js 5 | 6 | ![Image showing inferno, magma, plasma and viridis respectively](example/example.png) 7 | **Inferno, magma, plasma and viridis respectively** 8 | Installation 9 | ------------ 10 | 11 | ```bash 12 | npm install scale-color-perceptual 13 | ``` 14 | 15 | Usage 16 | ----- 17 | 18 | ```js 19 | const scale = require('scale-color-perceptual') 20 | 21 | [0, 0.25, 0.5, 0.75, 1].map(scale.viridis) // Spits out the colors at the given points 22 | ``` 23 | 24 | Exports `scale.inferno(t)`, `scale.magma(t)`, `scale.plasma(t)` and 25 | `scale.viridis(t)`, all taking scale parameter `t` in the range `[0, 1]`. 26 | If a number is given outside this range is given **an `Error` will be thrown**. 27 | 28 | Each of the scales has been put in the root of the module allowing you 29 | to import only the scale you need, yielding a smaller JS file: 30 | 31 | ```js 32 | 33 | const viridis = require('scale-color-perceptual/viridis') 34 | 35 | [0, 0.25, 0.5, 0.75, 1].map(viridis) // Spits out the colors at the given 36 | ``` 37 | 38 | It can also be used with D3: 39 | 40 | ```js 41 | const d3 = require('d3') 42 | const plasma = require('scale-color-perceptual/plasma') 43 | 44 | const depthScale = d3.scale.linear().domain([-100, 100]) // default range is [0, 1] 45 | .clamp(true) // Make sure the output is constrained to [0, 1] 46 | 47 | d3.selectAll('div', document.body) 48 | .data(d3.shuffle(d3.range(-100, 100, 0.1)).map(n => Math.random() * n)) 49 | .enter().append('div') 50 | .style({ 51 | background: d => viridis(depthScale(d)), 52 | width: '10px', 53 | height: '10px', 54 | float: 'left' 55 | }) 56 | ``` 57 | 58 | You can also import the raw color maps, either as `hex` or `rgb` triplets (`[r, g, b]`, where `c` is in `[0, 1]`): 59 | 60 | ```js 61 | const d3 = require('d3') 62 | const plasmaMap = require('scale-color-perceptual/hex/plasma') // returns 256 hex colors from dark to bright 63 | 64 | const colorScale = d3.scale.quantize().domain([-128, 127]).range(plasmaMap) 65 | ``` 66 | 67 | Development 68 | ----------- 69 | 70 | [`rgb/`](rgb/) contains raw JSON exports of the pixel `[r, g, b]` triplets 71 | from [`bids/colormap`][1], which are the default color scales in matplotlib 2.0. 72 | The pixel triplets were obtained from [`bids/colormap#84cb377`][2]. To build the 73 | corresponding [`hex/`](hex/) files, run `make`. 74 | 75 | License 76 | ------- 77 | 78 | All credits go to Stéfan van der Walt and Nathaniel Smith for their work 79 | devising these color scales. Remember to watch their [talk][1] on how it was 80 | derived and how it is better than other common scales 81 | 82 | The code in this repository is licensed under [ISC](LICENSE) 83 | 84 | [1]: http://bids.github.io/colormap/ 85 | [2]: https://github.com/BIDS/colormap/blob/84cb3771a38dfe3d3977677df31af55f4ab7985e/colormaps.py 86 | -------------------------------------------------------------------------------- /browser.js: -------------------------------------------------------------------------------- 1 | 'use strict' 2 | 3 | module.exports = { 4 | inferno: require('./inferno'), 5 | magma: require('./magma'), 6 | plasma: require('./plasma'), 7 | viridis: require('./viridis') 8 | } 9 | -------------------------------------------------------------------------------- /build.js: -------------------------------------------------------------------------------- 1 | 'use strict' 2 | 3 | const rgb2hex = require('./utils/rgb2hex') 4 | 5 | const hexScale = require(process.argv[2]).map(tuple => ({ 6 | r: tuple[0], 7 | g: tuple[1], 8 | b: tuple[2] 9 | })) 10 | .map(rgb2hex) 11 | 12 | process.stdout.write(JSON.stringify(hexScale)) 13 | -------------------------------------------------------------------------------- /example/d3-random-matrix.js: -------------------------------------------------------------------------------- 1 | const d3 = require('d3') 2 | const viridis = require('../plasma') 3 | 4 | const depthScale = d3.scale.linear().domain([-100, 100]) // default range is [0, 1] 5 | .clamp(true) // Make sure the output is constrained to [0, 1] 6 | 7 | d3.selectAll('div', document.body) 8 | .data(d3.shuffle(d3.range(-100, 100, 0.1)).map(n => Math.random() * n)) 9 | .enter().append('div') 10 | .style({ 11 | background: d => viridis(depthScale(d)), 12 | width: '10px', 13 | height: '10px', 14 | float: 'left' 15 | }) 16 | -------------------------------------------------------------------------------- /example/example.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/politiken-journalism/scale-color-perceptual/cdbc8d0b8e5ae0ed63961f641b01a137ece0ac03/example/example.png -------------------------------------------------------------------------------- /example/gradients.js: -------------------------------------------------------------------------------- 1 | var c = window.document.createElement('canvas') 2 | window.document.body.appendChild(c) 3 | var ctx = c.getContext('2d') 4 | 5 | var height = 390 6 | var width = 728 7 | 8 | c.height = height 9 | c.width = width 10 | 11 | var scale = require('..') 12 | 13 | var barHeight = (height - 10 * 3) / 4 14 | 15 | for (var pixel = 0; pixel < width; pixel++) { 16 | ctx.fillStyle = scale.inferno(pixel / width) 17 | ctx.fillRect(pixel, 0 * (barHeight + 10), 1, barHeight) 18 | 19 | ctx.fillStyle = scale.magma(pixel / width) 20 | ctx.fillRect(pixel, 1 * (barHeight + 10), 1, barHeight) 21 | 22 | ctx.fillStyle = scale.plasma(pixel / width) 23 | ctx.fillRect(pixel, 2 * (barHeight + 10), 1, barHeight) 24 | 25 | ctx.fillStyle = scale.viridis(pixel / width) 26 | ctx.fillRect(pixel, 3 * (barHeight + 10), 1, barHeight) 27 | } 28 | -------------------------------------------------------------------------------- /example/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "example", 3 | "version": "1.0.0", 4 | "description": "", 5 | "main": "index.js", 6 | "scripts": { 7 | "start-gradients": "wzrd gradients.js", 8 | "start-d3": "wzrd d3-random-matrix.js", 9 | "test": "echo \"Error: no test specified\" && exit 1" 10 | }, 11 | "author": "", 12 | "license": "ISC", 13 | "dependencies": { 14 | "canvas-browserify": "^1.1.3" 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /hex/inferno.json: -------------------------------------------------------------------------------- 1 | ["#000004","#010005","#010106","#010108","#02010a","#02020c","#02020e","#030210","#040312","#040314","#050417","#060419","#07051b","#08051d","#09061f","#0a0722","#0b0724","#0c0826","#0d0829","#0e092b","#10092d","#110a30","#120a32","#140b34","#150b37","#160b39","#180c3c","#190c3e","#1b0c41","#1c0c43","#1e0c45","#1f0c48","#210c4a","#230c4c","#240c4f","#260c51","#280b53","#290b55","#2b0b57","#2d0b59","#2f0a5b","#310a5c","#320a5e","#340a5f","#360961","#380962","#390963","#3b0964","#3d0965","#3e0966","#400a67","#420a68","#440a68","#450a69","#470b6a","#490b6a","#4a0c6b","#4c0c6b","#4d0d6c","#4f0d6c","#510e6c","#520e6d","#540f6d","#550f6d","#57106e","#59106e","#5a116e","#5c126e","#5d126e","#5f136e","#61136e","#62146e","#64156e","#65156e","#67166e","#69166e","#6a176e","#6c186e","#6d186e","#6f196e","#71196e","#721a6e","#741a6e","#751b6e","#771c6d","#781c6d","#7a1d6d","#7c1d6d","#7d1e6d","#7f1e6c","#801f6c","#82206c","#84206b","#85216b","#87216b","#88226a","#8a226a","#8c2369","#8d2369","#8f2469","#902568","#922568","#932667","#952667","#972766","#982766","#9a2865","#9b2964","#9d2964","#9f2a63","#a02a63","#a22b62","#a32c61","#a52c60","#a62d60","#a82e5f","#a92e5e","#ab2f5e","#ad305d","#ae305c","#b0315b","#b1325a","#b3325a","#b43359","#b63458","#b73557","#b93556","#ba3655","#bc3754","#bd3853","#bf3952","#c03a51","#c13a50","#c33b4f","#c43c4e","#c63d4d","#c73e4c","#c83f4b","#ca404a","#cb4149","#cc4248","#ce4347","#cf4446","#d04545","#d24644","#d34743","#d44842","#d54a41","#d74b3f","#d84c3e","#d94d3d","#da4e3c","#db503b","#dd513a","#de5238","#df5337","#e05536","#e15635","#e25734","#e35933","#e45a31","#e55c30","#e65d2f","#e75e2e","#e8602d","#e9612b","#ea632a","#eb6429","#eb6628","#ec6726","#ed6925","#ee6a24","#ef6c23","#ef6e21","#f06f20","#f1711f","#f1731d","#f2741c","#f3761b","#f37819","#f47918","#f57b17","#f57d15","#f67e14","#f68013","#f78212","#f78410","#f8850f","#f8870e","#f8890c","#f98b0b","#f98c0a","#f98e09","#fa9008","#fa9207","#fa9407","#fb9606","#fb9706","#fb9906","#fb9b06","#fb9d07","#fc9f07","#fca108","#fca309","#fca50a","#fca60c","#fca80d","#fcaa0f","#fcac11","#fcae12","#fcb014","#fcb216","#fcb418","#fbb61a","#fbb81d","#fbba1f","#fbbc21","#fbbe23","#fac026","#fac228","#fac42a","#fac62d","#f9c72f","#f9c932","#f9cb35","#f8cd37","#f8cf3a","#f7d13d","#f7d340","#f6d543","#f6d746","#f5d949","#f5db4c","#f4dd4f","#f4df53","#f4e156","#f3e35a","#f3e55d","#f2e661","#f2e865","#f2ea69","#f1ec6d","#f1ed71","#f1ef75","#f1f179","#f2f27d","#f2f482","#f3f586","#f3f68a","#f4f88e","#f5f992","#f6fa96","#f8fb9a","#f9fc9d","#fafda1","#fcffa4"] -------------------------------------------------------------------------------- /hex/magma.json: -------------------------------------------------------------------------------- 1 | ["#000004","#010005","#010106","#010108","#020109","#02020b","#02020d","#03030f","#030312","#040414","#050416","#060518","#06051a","#07061c","#08071e","#090720","#0a0822","#0b0924","#0c0926","#0d0a29","#0e0b2b","#100b2d","#110c2f","#120d31","#130d34","#140e36","#150e38","#160f3b","#180f3d","#19103f","#1a1042","#1c1044","#1d1147","#1e1149","#20114b","#21114e","#221150","#241253","#251255","#271258","#29115a","#2a115c","#2c115f","#2d1161","#2f1163","#311165","#331067","#341069","#36106b","#38106c","#390f6e","#3b0f70","#3d0f71","#3f0f72","#400f74","#420f75","#440f76","#451077","#471078","#491078","#4a1079","#4c117a","#4e117b","#4f127b","#51127c","#52137c","#54137d","#56147d","#57157e","#59157e","#5a167e","#5c167f","#5d177f","#5f187f","#601880","#621980","#641a80","#651a80","#671b80","#681c81","#6a1c81","#6b1d81","#6d1d81","#6e1e81","#701f81","#721f81","#732081","#752181","#762181","#782281","#792282","#7b2382","#7c2382","#7e2482","#802582","#812581","#832681","#842681","#862781","#882781","#892881","#8b2981","#8c2981","#8e2a81","#902a81","#912b81","#932b80","#942c80","#962c80","#982d80","#992d80","#9b2e7f","#9c2e7f","#9e2f7f","#a02f7f","#a1307e","#a3307e","#a5317e","#a6317d","#a8327d","#aa337d","#ab337c","#ad347c","#ae347b","#b0357b","#b2357b","#b3367a","#b5367a","#b73779","#b83779","#ba3878","#bc3978","#bd3977","#bf3a77","#c03a76","#c23b75","#c43c75","#c53c74","#c73d73","#c83e73","#ca3e72","#cc3f71","#cd4071","#cf4070","#d0416f","#d2426f","#d3436e","#d5446d","#d6456c","#d8456c","#d9466b","#db476a","#dc4869","#de4968","#df4a68","#e04c67","#e24d66","#e34e65","#e44f64","#e55064","#e75263","#e85362","#e95462","#ea5661","#eb5760","#ec5860","#ed5a5f","#ee5b5e","#ef5d5e","#f05f5e","#f1605d","#f2625d","#f2645c","#f3655c","#f4675c","#f4695c","#f56b5c","#f66c5c","#f66e5c","#f7705c","#f7725c","#f8745c","#f8765c","#f9785d","#f9795d","#f97b5d","#fa7d5e","#fa7f5e","#fa815f","#fb835f","#fb8560","#fb8761","#fc8961","#fc8a62","#fc8c63","#fc8e64","#fc9065","#fd9266","#fd9467","#fd9668","#fd9869","#fd9a6a","#fd9b6b","#fe9d6c","#fe9f6d","#fea16e","#fea36f","#fea571","#fea772","#fea973","#feaa74","#feac76","#feae77","#feb078","#feb27a","#feb47b","#feb67c","#feb77e","#feb97f","#febb81","#febd82","#febf84","#fec185","#fec287","#fec488","#fec68a","#fec88c","#feca8d","#fecc8f","#fecd90","#fecf92","#fed194","#fed395","#fed597","#fed799","#fed89a","#fdda9c","#fddc9e","#fddea0","#fde0a1","#fde2a3","#fde3a5","#fde5a7","#fde7a9","#fde9aa","#fdebac","#fcecae","#fceeb0","#fcf0b2","#fcf2b4","#fcf4b6","#fcf6b8","#fcf7b9","#fcf9bb","#fcfbbd","#fcfdbf"] -------------------------------------------------------------------------------- /hex/plasma.json: -------------------------------------------------------------------------------- 1 | ["#0d0887","#100788","#130789","#16078a","#19068c","#1b068d","#1d068e","#20068f","#220690","#240691","#260591","#280592","#2a0593","#2c0594","#2e0595","#2f0596","#310597","#330597","#350498","#370499","#38049a","#3a049a","#3c049b","#3e049c","#3f049c","#41049d","#43039e","#44039e","#46039f","#48039f","#4903a0","#4b03a1","#4c02a1","#4e02a2","#5002a2","#5102a3","#5302a3","#5502a4","#5601a4","#5801a4","#5901a5","#5b01a5","#5c01a6","#5e01a6","#6001a6","#6100a7","#6300a7","#6400a7","#6600a7","#6700a8","#6900a8","#6a00a8","#6c00a8","#6e00a8","#6f00a8","#7100a8","#7201a8","#7401a8","#7501a8","#7701a8","#7801a8","#7a02a8","#7b02a8","#7d03a8","#7e03a8","#8004a8","#8104a7","#8305a7","#8405a7","#8606a6","#8707a6","#8808a6","#8a09a5","#8b0aa5","#8d0ba5","#8e0ca4","#8f0da4","#910ea3","#920fa3","#9410a2","#9511a1","#9613a1","#9814a0","#99159f","#9a169f","#9c179e","#9d189d","#9e199d","#a01a9c","#a11b9b","#a21d9a","#a31e9a","#a51f99","#a62098","#a72197","#a82296","#aa2395","#ab2494","#ac2694","#ad2793","#ae2892","#b02991","#b12a90","#b22b8f","#b32c8e","#b42e8d","#b52f8c","#b6308b","#b7318a","#b83289","#ba3388","#bb3488","#bc3587","#bd3786","#be3885","#bf3984","#c03a83","#c13b82","#c23c81","#c33d80","#c43e7f","#c5407e","#c6417d","#c7427c","#c8437b","#c9447a","#ca457a","#cb4679","#cc4778","#cc4977","#cd4a76","#ce4b75","#cf4c74","#d04d73","#d14e72","#d24f71","#d35171","#d45270","#d5536f","#d5546e","#d6556d","#d7566c","#d8576b","#d9586a","#da5a6a","#da5b69","#db5c68","#dc5d67","#dd5e66","#de5f65","#de6164","#df6263","#e06363","#e16462","#e26561","#e26660","#e3685f","#e4695e","#e56a5d","#e56b5d","#e66c5c","#e76e5b","#e76f5a","#e87059","#e97158","#e97257","#ea7457","#eb7556","#eb7655","#ec7754","#ed7953","#ed7a52","#ee7b51","#ef7c51","#ef7e50","#f07f4f","#f0804e","#f1814d","#f1834c","#f2844b","#f3854b","#f3874a","#f48849","#f48948","#f58b47","#f58c46","#f68d45","#f68f44","#f79044","#f79143","#f79342","#f89441","#f89540","#f9973f","#f9983e","#f99a3e","#fa9b3d","#fa9c3c","#fa9e3b","#fb9f3a","#fba139","#fba238","#fca338","#fca537","#fca636","#fca835","#fca934","#fdab33","#fdac33","#fdae32","#fdaf31","#fdb130","#fdb22f","#fdb42f","#fdb52e","#feb72d","#feb82c","#feba2c","#febb2b","#febd2a","#febe2a","#fec029","#fdc229","#fdc328","#fdc527","#fdc627","#fdc827","#fdca26","#fdcb26","#fccd25","#fcce25","#fcd025","#fcd225","#fbd324","#fbd524","#fbd724","#fad824","#fada24","#f9dc24","#f9dd25","#f8df25","#f8e125","#f7e225","#f7e425","#f6e626","#f6e826","#f5e926","#f5eb27","#f4ed27","#f3ee27","#f3f027","#f2f227","#f1f426","#f1f525","#f0f724","#f0f921"] -------------------------------------------------------------------------------- /hex/viridis.json: -------------------------------------------------------------------------------- 1 | ["#440154","#440256","#450457","#450559","#46075a","#46085c","#460a5d","#460b5e","#470d60","#470e61","#471063","#471164","#471365","#481467","#481668","#481769","#48186a","#481a6c","#481b6d","#481c6e","#481d6f","#481f70","#482071","#482173","#482374","#482475","#482576","#482677","#482878","#482979","#472a7a","#472c7a","#472d7b","#472e7c","#472f7d","#46307e","#46327e","#46337f","#463480","#453581","#453781","#453882","#443983","#443a83","#443b84","#433d84","#433e85","#423f85","#424086","#424186","#414287","#414487","#404588","#404688","#3f4788","#3f4889","#3e4989","#3e4a89","#3e4c8a","#3d4d8a","#3d4e8a","#3c4f8a","#3c508b","#3b518b","#3b528b","#3a538b","#3a548c","#39558c","#39568c","#38588c","#38598c","#375a8c","#375b8d","#365c8d","#365d8d","#355e8d","#355f8d","#34608d","#34618d","#33628d","#33638d","#32648e","#32658e","#31668e","#31678e","#31688e","#30698e","#306a8e","#2f6b8e","#2f6c8e","#2e6d8e","#2e6e8e","#2e6f8e","#2d708e","#2d718e","#2c718e","#2c728e","#2c738e","#2b748e","#2b758e","#2a768e","#2a778e","#2a788e","#29798e","#297a8e","#297b8e","#287c8e","#287d8e","#277e8e","#277f8e","#27808e","#26818e","#26828e","#26828e","#25838e","#25848e","#25858e","#24868e","#24878e","#23888e","#23898e","#238a8d","#228b8d","#228c8d","#228d8d","#218e8d","#218f8d","#21908d","#21918c","#20928c","#20928c","#20938c","#1f948c","#1f958b","#1f968b","#1f978b","#1f988b","#1f998a","#1f9a8a","#1e9b8a","#1e9c89","#1e9d89","#1f9e89","#1f9f88","#1fa088","#1fa188","#1fa187","#1fa287","#20a386","#20a486","#21a585","#21a685","#22a785","#22a884","#23a983","#24aa83","#25ab82","#25ac82","#26ad81","#27ad81","#28ae80","#29af7f","#2ab07f","#2cb17e","#2db27d","#2eb37c","#2fb47c","#31b57b","#32b67a","#34b679","#35b779","#37b878","#38b977","#3aba76","#3bbb75","#3dbc74","#3fbc73","#40bd72","#42be71","#44bf70","#46c06f","#48c16e","#4ac16d","#4cc26c","#4ec36b","#50c46a","#52c569","#54c568","#56c667","#58c765","#5ac864","#5cc863","#5ec962","#60ca60","#63cb5f","#65cb5e","#67cc5c","#69cd5b","#6ccd5a","#6ece58","#70cf57","#73d056","#75d054","#77d153","#7ad151","#7cd250","#7fd34e","#81d34d","#84d44b","#86d549","#89d548","#8bd646","#8ed645","#90d743","#93d741","#95d840","#98d83e","#9bd93c","#9dd93b","#a0da39","#a2da37","#a5db36","#a8db34","#aadc32","#addc30","#b0dd2f","#b2dd2d","#b5de2b","#b8de29","#bade28","#bddf26","#c0df25","#c2df23","#c5e021","#c8e020","#cae11f","#cde11d","#d0e11c","#d2e21b","#d5e21a","#d8e219","#dae319","#dde318","#dfe318","#e2e418","#e5e419","#e7e419","#eae51a","#ece51b","#efe51c","#f1e51d","#f4e61e","#f6e620","#f8e621","#fbe723","#fde725"] -------------------------------------------------------------------------------- /inferno.js: -------------------------------------------------------------------------------- 1 | 'use strict' 2 | 3 | module.exports = require('./utils/interpolate').interpolateArray(require('./hex/inferno.json')) 4 | -------------------------------------------------------------------------------- /magma.js: -------------------------------------------------------------------------------- 1 | 'use strict' 2 | 3 | module.exports = require('./utils/interpolate').interpolateArray(require('./hex/magma.json')) 4 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "scale-color-perceptual", 3 | "version": "1.1.2", 4 | "description": "Javascript exports of matplotlib's new default color scales; inferno, magma, plasma and viridis. Works with browserify and D3.js", 5 | "main": "browser.js", 6 | "scripts": { 7 | "test": "standard" 8 | }, 9 | "repository": { 10 | "type": "git", 11 | "url": "git+https://github.com/politiken-journalism/scale-color-perceptual.git" 12 | }, 13 | "keywords": [ 14 | "color", 15 | "scale", 16 | "perceptual", 17 | "uniform", 18 | "perception", 19 | "matplotlib", 20 | "viridis", 21 | "inferno", 22 | "magma", 23 | "plasma", 24 | "jet", 25 | "d3", 26 | "interpolation" 27 | ], 28 | "directories": { 29 | "example": "example" 30 | }, 31 | "author": "Emil Bay ", 32 | "license": "ISC", 33 | "bugs": { 34 | "url": "https://github.com/politiken-journalism/scale-color-perceptual/issues" 35 | }, 36 | "homepage": "https://github.com/politiken-journalism/scale-color-perceptual#readme", 37 | "devDependencies": { 38 | "standard": "^5.3.1" 39 | } 40 | } 41 | -------------------------------------------------------------------------------- /plasma.js: -------------------------------------------------------------------------------- 1 | 'use strict' 2 | 3 | module.exports = require('./utils/interpolate').interpolateArray(require('./hex/plasma.json')) 4 | -------------------------------------------------------------------------------- /rgb/inferno.json: -------------------------------------------------------------------------------- 1 | [ 2 | [0.001462, 0.000466, 0.013866], 3 | [0.002267, 0.001270, 0.018570], 4 | [0.003299, 0.002249, 0.024239], 5 | [0.004547, 0.003392, 0.030909], 6 | [0.006006, 0.004692, 0.038558], 7 | [0.007676, 0.006136, 0.046836], 8 | [0.009561, 0.007713, 0.055143], 9 | [0.011663, 0.009417, 0.063460], 10 | [0.013995, 0.011225, 0.071862], 11 | [0.016561, 0.013136, 0.080282], 12 | [0.019373, 0.015133, 0.088767], 13 | [0.022447, 0.017199, 0.097327], 14 | [0.025793, 0.019331, 0.105930], 15 | [0.029432, 0.021503, 0.114621], 16 | [0.033385, 0.023702, 0.123397], 17 | [0.037668, 0.025921, 0.132232], 18 | [0.042253, 0.028139, 0.141141], 19 | [0.046915, 0.030324, 0.150164], 20 | [0.051644, 0.032474, 0.159254], 21 | [0.056449, 0.034569, 0.168414], 22 | [0.061340, 0.036590, 0.177642], 23 | [0.066331, 0.038504, 0.186962], 24 | [0.071429, 0.040294, 0.196354], 25 | [0.076637, 0.041905, 0.205799], 26 | [0.081962, 0.043328, 0.215289], 27 | [0.087411, 0.044556, 0.224813], 28 | [0.092990, 0.045583, 0.234358], 29 | [0.098702, 0.046402, 0.243904], 30 | [0.104551, 0.047008, 0.253430], 31 | [0.110536, 0.047399, 0.262912], 32 | [0.116656, 0.047574, 0.272321], 33 | [0.122908, 0.047536, 0.281624], 34 | [0.129285, 0.047293, 0.290788], 35 | [0.135778, 0.046856, 0.299776], 36 | [0.142378, 0.046242, 0.308553], 37 | [0.149073, 0.045468, 0.317085], 38 | [0.155850, 0.044559, 0.325338], 39 | [0.162689, 0.043554, 0.333277], 40 | [0.169575, 0.042489, 0.340874], 41 | [0.176493, 0.041402, 0.348111], 42 | [0.183429, 0.040329, 0.354971], 43 | [0.190367, 0.039309, 0.361447], 44 | [0.197297, 0.038400, 0.367535], 45 | [0.204209, 0.037632, 0.373238], 46 | [0.211095, 0.037030, 0.378563], 47 | [0.217949, 0.036615, 0.383522], 48 | [0.224763, 0.036405, 0.388129], 49 | [0.231538, 0.036405, 0.392400], 50 | [0.238273, 0.036621, 0.396353], 51 | [0.244967, 0.037055, 0.400007], 52 | [0.251620, 0.037705, 0.403378], 53 | [0.258234, 0.038571, 0.406485], 54 | [0.264810, 0.039647, 0.409345], 55 | [0.271347, 0.040922, 0.411976], 56 | [0.277850, 0.042353, 0.414392], 57 | [0.284321, 0.043933, 0.416608], 58 | [0.290763, 0.045644, 0.418637], 59 | [0.297178, 0.047470, 0.420491], 60 | [0.303568, 0.049396, 0.422182], 61 | [0.309935, 0.051407, 0.423721], 62 | [0.316282, 0.053490, 0.425116], 63 | [0.322610, 0.055634, 0.426377], 64 | [0.328921, 0.057827, 0.427511], 65 | [0.335217, 0.060060, 0.428524], 66 | [0.341500, 0.062325, 0.429425], 67 | [0.347771, 0.064616, 0.430217], 68 | [0.354032, 0.066925, 0.430906], 69 | [0.360284, 0.069247, 0.431497], 70 | [0.366529, 0.071579, 0.431994], 71 | [0.372768, 0.073915, 0.432400], 72 | [0.379001, 0.076253, 0.432719], 73 | [0.385228, 0.078591, 0.432955], 74 | [0.391453, 0.080927, 0.433109], 75 | [0.397674, 0.083257, 0.433183], 76 | [0.403894, 0.085580, 0.433179], 77 | [0.410113, 0.087896, 0.433098], 78 | [0.416331, 0.090203, 0.432943], 79 | [0.422549, 0.092501, 0.432714], 80 | [0.428768, 0.094790, 0.432412], 81 | [0.434987, 0.097069, 0.432039], 82 | [0.441207, 0.099338, 0.431594], 83 | [0.447428, 0.101597, 0.431080], 84 | [0.453651, 0.103848, 0.430498], 85 | [0.459875, 0.106089, 0.429846], 86 | [0.466100, 0.108322, 0.429125], 87 | [0.472328, 0.110547, 0.428334], 88 | [0.478558, 0.112764, 0.427475], 89 | [0.484789, 0.114974, 0.426548], 90 | [0.491022, 0.117179, 0.425552], 91 | [0.497257, 0.119379, 0.424488], 92 | [0.503493, 0.121575, 0.423356], 93 | [0.509730, 0.123769, 0.422156], 94 | [0.515967, 0.125960, 0.420887], 95 | [0.522206, 0.128150, 0.419549], 96 | [0.528444, 0.130341, 0.418142], 97 | [0.534683, 0.132534, 0.416667], 98 | [0.540920, 0.134729, 0.415123], 99 | [0.547157, 0.136929, 0.413511], 100 | [0.553392, 0.139134, 0.411829], 101 | [0.559624, 0.141346, 0.410078], 102 | [0.565854, 0.143567, 0.408258], 103 | [0.572081, 0.145797, 0.406369], 104 | [0.578304, 0.148039, 0.404411], 105 | [0.584521, 0.150294, 0.402385], 106 | [0.590734, 0.152563, 0.400290], 107 | [0.596940, 0.154848, 0.398125], 108 | [0.603139, 0.157151, 0.395891], 109 | [0.609330, 0.159474, 0.393589], 110 | [0.615513, 0.161817, 0.391219], 111 | [0.621685, 0.164184, 0.388781], 112 | [0.627847, 0.166575, 0.386276], 113 | [0.633998, 0.168992, 0.383704], 114 | [0.640135, 0.171438, 0.381065], 115 | [0.646260, 0.173914, 0.378359], 116 | [0.652369, 0.176421, 0.375586], 117 | [0.658463, 0.178962, 0.372748], 118 | [0.664540, 0.181539, 0.369846], 119 | [0.670599, 0.184153, 0.366879], 120 | [0.676638, 0.186807, 0.363849], 121 | [0.682656, 0.189501, 0.360757], 122 | [0.688653, 0.192239, 0.357603], 123 | [0.694627, 0.195021, 0.354388], 124 | [0.700576, 0.197851, 0.351113], 125 | [0.706500, 0.200728, 0.347777], 126 | [0.712396, 0.203656, 0.344383], 127 | [0.718264, 0.206636, 0.340931], 128 | [0.724103, 0.209670, 0.337424], 129 | [0.729909, 0.212759, 0.333861], 130 | [0.735683, 0.215906, 0.330245], 131 | [0.741423, 0.219112, 0.326576], 132 | [0.747127, 0.222378, 0.322856], 133 | [0.752794, 0.225706, 0.319085], 134 | [0.758422, 0.229097, 0.315266], 135 | [0.764010, 0.232554, 0.311399], 136 | [0.769556, 0.236077, 0.307485], 137 | [0.775059, 0.239667, 0.303526], 138 | [0.780517, 0.243327, 0.299523], 139 | [0.785929, 0.247056, 0.295477], 140 | [0.791293, 0.250856, 0.291390], 141 | [0.796607, 0.254728, 0.287264], 142 | [0.801871, 0.258674, 0.283099], 143 | [0.807082, 0.262692, 0.278898], 144 | [0.812239, 0.266786, 0.274661], 145 | [0.817341, 0.270954, 0.270390], 146 | [0.822386, 0.275197, 0.266085], 147 | [0.827372, 0.279517, 0.261750], 148 | [0.832299, 0.283913, 0.257383], 149 | [0.837165, 0.288385, 0.252988], 150 | [0.841969, 0.292933, 0.248564], 151 | [0.846709, 0.297559, 0.244113], 152 | [0.851384, 0.302260, 0.239636], 153 | [0.855992, 0.307038, 0.235133], 154 | [0.860533, 0.311892, 0.230606], 155 | [0.865006, 0.316822, 0.226055], 156 | [0.869409, 0.321827, 0.221482], 157 | [0.873741, 0.326906, 0.216886], 158 | [0.878001, 0.332060, 0.212268], 159 | [0.882188, 0.337287, 0.207628], 160 | [0.886302, 0.342586, 0.202968], 161 | [0.890341, 0.347957, 0.198286], 162 | [0.894305, 0.353399, 0.193584], 163 | [0.898192, 0.358911, 0.188860], 164 | [0.902003, 0.364492, 0.184116], 165 | [0.905735, 0.370140, 0.179350], 166 | [0.909390, 0.375856, 0.174563], 167 | [0.912966, 0.381636, 0.169755], 168 | [0.916462, 0.387481, 0.164924], 169 | [0.919879, 0.393389, 0.160070], 170 | [0.923215, 0.399359, 0.155193], 171 | [0.926470, 0.405389, 0.150292], 172 | [0.929644, 0.411479, 0.145367], 173 | [0.932737, 0.417627, 0.140417], 174 | [0.935747, 0.423831, 0.135440], 175 | [0.938675, 0.430091, 0.130438], 176 | [0.941521, 0.436405, 0.125409], 177 | [0.944285, 0.442772, 0.120354], 178 | [0.946965, 0.449191, 0.115272], 179 | [0.949562, 0.455660, 0.110164], 180 | [0.952075, 0.462178, 0.105031], 181 | [0.954506, 0.468744, 0.099874], 182 | [0.956852, 0.475356, 0.094695], 183 | [0.959114, 0.482014, 0.089499], 184 | [0.961293, 0.488716, 0.084289], 185 | [0.963387, 0.495462, 0.079073], 186 | [0.965397, 0.502249, 0.073859], 187 | [0.967322, 0.509078, 0.068659], 188 | [0.969163, 0.515946, 0.063488], 189 | [0.970919, 0.522853, 0.058367], 190 | [0.972590, 0.529798, 0.053324], 191 | [0.974176, 0.536780, 0.048392], 192 | [0.975677, 0.543798, 0.043618], 193 | [0.977092, 0.550850, 0.039050], 194 | [0.978422, 0.557937, 0.034931], 195 | [0.979666, 0.565057, 0.031409], 196 | [0.980824, 0.572209, 0.028508], 197 | [0.981895, 0.579392, 0.026250], 198 | [0.982881, 0.586606, 0.024661], 199 | [0.983779, 0.593849, 0.023770], 200 | [0.984591, 0.601122, 0.023606], 201 | [0.985315, 0.608422, 0.024202], 202 | [0.985952, 0.615750, 0.025592], 203 | [0.986502, 0.623105, 0.027814], 204 | [0.986964, 0.630485, 0.030908], 205 | [0.987337, 0.637890, 0.034916], 206 | [0.987622, 0.645320, 0.039886], 207 | [0.987819, 0.652773, 0.045581], 208 | [0.987926, 0.660250, 0.051750], 209 | [0.987945, 0.667748, 0.058329], 210 | [0.987874, 0.675267, 0.065257], 211 | [0.987714, 0.682807, 0.072489], 212 | [0.987464, 0.690366, 0.079990], 213 | [0.987124, 0.697944, 0.087731], 214 | [0.986694, 0.705540, 0.095694], 215 | [0.986175, 0.713153, 0.103863], 216 | [0.985566, 0.720782, 0.112229], 217 | [0.984865, 0.728427, 0.120785], 218 | [0.984075, 0.736087, 0.129527], 219 | [0.983196, 0.743758, 0.138453], 220 | [0.982228, 0.751442, 0.147565], 221 | [0.981173, 0.759135, 0.156863], 222 | [0.980032, 0.766837, 0.166353], 223 | [0.978806, 0.774545, 0.176037], 224 | [0.977497, 0.782258, 0.185923], 225 | [0.976108, 0.789974, 0.196018], 226 | [0.974638, 0.797692, 0.206332], 227 | [0.973088, 0.805409, 0.216877], 228 | [0.971468, 0.813122, 0.227658], 229 | [0.969783, 0.820825, 0.238686], 230 | [0.968041, 0.828515, 0.249972], 231 | [0.966243, 0.836191, 0.261534], 232 | [0.964394, 0.843848, 0.273391], 233 | [0.962517, 0.851476, 0.285546], 234 | [0.960626, 0.859069, 0.298010], 235 | [0.958720, 0.866624, 0.310820], 236 | [0.956834, 0.874129, 0.323974], 237 | [0.954997, 0.881569, 0.337475], 238 | [0.953215, 0.888942, 0.351369], 239 | [0.951546, 0.896226, 0.365627], 240 | [0.950018, 0.903409, 0.380271], 241 | [0.948683, 0.910473, 0.395289], 242 | [0.947594, 0.917399, 0.410665], 243 | [0.946809, 0.924168, 0.426373], 244 | [0.946392, 0.930761, 0.442367], 245 | [0.946403, 0.937159, 0.458592], 246 | [0.946903, 0.943348, 0.474970], 247 | [0.947937, 0.949318, 0.491426], 248 | [0.949545, 0.955063, 0.507860], 249 | [0.951740, 0.960587, 0.524203], 250 | [0.954529, 0.965896, 0.540361], 251 | [0.957896, 0.971003, 0.556275], 252 | [0.961812, 0.975924, 0.571925], 253 | [0.966249, 0.980678, 0.587206], 254 | [0.971162, 0.985282, 0.602154], 255 | [0.976511, 0.989753, 0.616760], 256 | [0.982257, 0.994109, 0.631017], 257 | [0.988362, 0.998364, 0.644924] 258 | ] 259 | -------------------------------------------------------------------------------- /rgb/magma.json: -------------------------------------------------------------------------------- 1 | [ 2 | [0.001462, 0.000466, 0.013866], 3 | [0.002258, 0.001295, 0.018331], 4 | [0.003279, 0.002305, 0.023708], 5 | [0.004512, 0.003490, 0.029965], 6 | [0.005950, 0.004843, 0.037130], 7 | [0.007588, 0.006356, 0.044973], 8 | [0.009426, 0.008022, 0.052844], 9 | [0.011465, 0.009828, 0.060750], 10 | [0.013708, 0.011771, 0.068667], 11 | [0.016156, 0.013840, 0.076603], 12 | [0.018815, 0.016026, 0.084584], 13 | [0.021692, 0.018320, 0.092610], 14 | [0.024792, 0.020715, 0.100676], 15 | [0.028123, 0.023201, 0.108787], 16 | [0.031696, 0.025765, 0.116965], 17 | [0.035520, 0.028397, 0.125209], 18 | [0.039608, 0.031090, 0.133515], 19 | [0.043830, 0.033830, 0.141886], 20 | [0.048062, 0.036607, 0.150327], 21 | [0.052320, 0.039407, 0.158841], 22 | [0.056615, 0.042160, 0.167446], 23 | [0.060949, 0.044794, 0.176129], 24 | [0.065330, 0.047318, 0.184892], 25 | [0.069764, 0.049726, 0.193735], 26 | [0.074257, 0.052017, 0.202660], 27 | [0.078815, 0.054184, 0.211667], 28 | [0.083446, 0.056225, 0.220755], 29 | [0.088155, 0.058133, 0.229922], 30 | [0.092949, 0.059904, 0.239164], 31 | [0.097833, 0.061531, 0.248477], 32 | [0.102815, 0.063010, 0.257854], 33 | [0.107899, 0.064335, 0.267289], 34 | [0.113094, 0.065492, 0.276784], 35 | [0.118405, 0.066479, 0.286321], 36 | [0.123833, 0.067295, 0.295879], 37 | [0.129380, 0.067935, 0.305443], 38 | [0.135053, 0.068391, 0.315000], 39 | [0.140858, 0.068654, 0.324538], 40 | [0.146785, 0.068738, 0.334011], 41 | [0.152839, 0.068637, 0.343404], 42 | [0.159018, 0.068354, 0.352688], 43 | [0.165308, 0.067911, 0.361816], 44 | [0.171713, 0.067305, 0.370771], 45 | [0.178212, 0.066576, 0.379497], 46 | [0.184801, 0.065732, 0.387973], 47 | [0.191460, 0.064818, 0.396152], 48 | [0.198177, 0.063862, 0.404009], 49 | [0.204935, 0.062907, 0.411514], 50 | [0.211718, 0.061992, 0.418647], 51 | [0.218512, 0.061158, 0.425392], 52 | [0.225302, 0.060445, 0.431742], 53 | [0.232077, 0.059889, 0.437695], 54 | [0.238826, 0.059517, 0.443256], 55 | [0.245543, 0.059352, 0.448436], 56 | [0.252220, 0.059415, 0.453248], 57 | [0.258857, 0.059706, 0.457710], 58 | [0.265447, 0.060237, 0.461840], 59 | [0.271994, 0.060994, 0.465660], 60 | [0.278493, 0.061978, 0.469190], 61 | [0.284951, 0.063168, 0.472451], 62 | [0.291366, 0.064553, 0.475462], 63 | [0.297740, 0.066117, 0.478243], 64 | [0.304081, 0.067835, 0.480812], 65 | [0.310382, 0.069702, 0.483186], 66 | [0.316654, 0.071690, 0.485380], 67 | [0.322899, 0.073782, 0.487408], 68 | [0.329114, 0.075972, 0.489287], 69 | [0.335308, 0.078236, 0.491024], 70 | [0.341482, 0.080564, 0.492631], 71 | [0.347636, 0.082946, 0.494121], 72 | [0.353773, 0.085373, 0.495501], 73 | [0.359898, 0.087831, 0.496778], 74 | [0.366012, 0.090314, 0.497960], 75 | [0.372116, 0.092816, 0.499053], 76 | [0.378211, 0.095332, 0.500067], 77 | [0.384299, 0.097855, 0.501002], 78 | [0.390384, 0.100379, 0.501864], 79 | [0.396467, 0.102902, 0.502658], 80 | [0.402548, 0.105420, 0.503386], 81 | [0.408629, 0.107930, 0.504052], 82 | [0.414709, 0.110431, 0.504662], 83 | [0.420791, 0.112920, 0.505215], 84 | [0.426877, 0.115395, 0.505714], 85 | [0.432967, 0.117855, 0.506160], 86 | [0.439062, 0.120298, 0.506555], 87 | [0.445163, 0.122724, 0.506901], 88 | [0.451271, 0.125132, 0.507198], 89 | [0.457386, 0.127522, 0.507448], 90 | [0.463508, 0.129893, 0.507652], 91 | [0.469640, 0.132245, 0.507809], 92 | [0.475780, 0.134577, 0.507921], 93 | [0.481929, 0.136891, 0.507989], 94 | [0.488088, 0.139186, 0.508011], 95 | [0.494258, 0.141462, 0.507988], 96 | [0.500438, 0.143719, 0.507920], 97 | [0.506629, 0.145958, 0.507806], 98 | [0.512831, 0.148179, 0.507648], 99 | [0.519045, 0.150383, 0.507443], 100 | [0.525270, 0.152569, 0.507192], 101 | [0.531507, 0.154739, 0.506895], 102 | [0.537755, 0.156894, 0.506551], 103 | [0.544015, 0.159033, 0.506159], 104 | [0.550287, 0.161158, 0.505719], 105 | [0.556571, 0.163269, 0.505230], 106 | [0.562866, 0.165368, 0.504692], 107 | [0.569172, 0.167454, 0.504105], 108 | [0.575490, 0.169530, 0.503466], 109 | [0.581819, 0.171596, 0.502777], 110 | [0.588158, 0.173652, 0.502035], 111 | [0.594508, 0.175701, 0.501241], 112 | [0.600868, 0.177743, 0.500394], 113 | [0.607238, 0.179779, 0.499492], 114 | [0.613617, 0.181811, 0.498536], 115 | [0.620005, 0.183840, 0.497524], 116 | [0.626401, 0.185867, 0.496456], 117 | [0.632805, 0.187893, 0.495332], 118 | [0.639216, 0.189921, 0.494150], 119 | [0.645633, 0.191952, 0.492910], 120 | [0.652056, 0.193986, 0.491611], 121 | [0.658483, 0.196027, 0.490253], 122 | [0.664915, 0.198075, 0.488836], 123 | [0.671349, 0.200133, 0.487358], 124 | [0.677786, 0.202203, 0.485819], 125 | [0.684224, 0.204286, 0.484219], 126 | [0.690661, 0.206384, 0.482558], 127 | [0.697098, 0.208501, 0.480835], 128 | [0.703532, 0.210638, 0.479049], 129 | [0.709962, 0.212797, 0.477201], 130 | [0.716387, 0.214982, 0.475290], 131 | [0.722805, 0.217194, 0.473316], 132 | [0.729216, 0.219437, 0.471279], 133 | [0.735616, 0.221713, 0.469180], 134 | [0.742004, 0.224025, 0.467018], 135 | [0.748378, 0.226377, 0.464794], 136 | [0.754737, 0.228772, 0.462509], 137 | [0.761077, 0.231214, 0.460162], 138 | [0.767398, 0.233705, 0.457755], 139 | [0.773695, 0.236249, 0.455289], 140 | [0.779968, 0.238851, 0.452765], 141 | [0.786212, 0.241514, 0.450184], 142 | [0.792427, 0.244242, 0.447543], 143 | [0.798608, 0.247040, 0.444848], 144 | [0.804752, 0.249911, 0.442102], 145 | [0.810855, 0.252861, 0.439305], 146 | [0.816914, 0.255895, 0.436461], 147 | [0.822926, 0.259016, 0.433573], 148 | [0.828886, 0.262229, 0.430644], 149 | [0.834791, 0.265540, 0.427671], 150 | [0.840636, 0.268953, 0.424666], 151 | [0.846416, 0.272473, 0.421631], 152 | [0.852126, 0.276106, 0.418573], 153 | [0.857763, 0.279857, 0.415496], 154 | [0.863320, 0.283729, 0.412403], 155 | [0.868793, 0.287728, 0.409303], 156 | [0.874176, 0.291859, 0.406205], 157 | [0.879464, 0.296125, 0.403118], 158 | [0.884651, 0.300530, 0.400047], 159 | [0.889731, 0.305079, 0.397002], 160 | [0.894700, 0.309773, 0.393995], 161 | [0.899552, 0.314616, 0.391037], 162 | [0.904281, 0.319610, 0.388137], 163 | [0.908884, 0.324755, 0.385308], 164 | [0.913354, 0.330052, 0.382563], 165 | [0.917689, 0.335500, 0.379915], 166 | [0.921884, 0.341098, 0.377376], 167 | [0.925937, 0.346844, 0.374959], 168 | [0.929845, 0.352734, 0.372677], 169 | [0.933606, 0.358764, 0.370541], 170 | [0.937221, 0.364929, 0.368567], 171 | [0.940687, 0.371224, 0.366762], 172 | [0.944006, 0.377643, 0.365136], 173 | [0.947180, 0.384178, 0.363701], 174 | [0.950210, 0.390820, 0.362468], 175 | [0.953099, 0.397563, 0.361438], 176 | [0.955849, 0.404400, 0.360619], 177 | [0.958464, 0.411324, 0.360014], 178 | [0.960949, 0.418323, 0.359630], 179 | [0.963310, 0.425390, 0.359469], 180 | [0.965549, 0.432519, 0.359529], 181 | [0.967671, 0.439703, 0.359810], 182 | [0.969680, 0.446936, 0.360311], 183 | [0.971582, 0.454210, 0.361030], 184 | [0.973381, 0.461520, 0.361965], 185 | [0.975082, 0.468861, 0.363111], 186 | [0.976690, 0.476226, 0.364466], 187 | [0.978210, 0.483612, 0.366025], 188 | [0.979645, 0.491014, 0.367783], 189 | [0.981000, 0.498428, 0.369734], 190 | [0.982279, 0.505851, 0.371874], 191 | [0.983485, 0.513280, 0.374198], 192 | [0.984622, 0.520713, 0.376698], 193 | [0.985693, 0.528148, 0.379371], 194 | [0.986700, 0.535582, 0.382210], 195 | [0.987646, 0.543015, 0.385210], 196 | [0.988533, 0.550446, 0.388365], 197 | [0.989363, 0.557873, 0.391671], 198 | [0.990138, 0.565296, 0.395122], 199 | [0.990871, 0.572706, 0.398714], 200 | [0.991558, 0.580107, 0.402441], 201 | [0.992196, 0.587502, 0.406299], 202 | [0.992785, 0.594891, 0.410283], 203 | [0.993326, 0.602275, 0.414390], 204 | [0.993834, 0.609644, 0.418613], 205 | [0.994309, 0.616999, 0.422950], 206 | [0.994738, 0.624350, 0.427397], 207 | [0.995122, 0.631696, 0.431951], 208 | [0.995480, 0.639027, 0.436607], 209 | [0.995810, 0.646344, 0.441361], 210 | [0.996096, 0.653659, 0.446213], 211 | [0.996341, 0.660969, 0.451160], 212 | [0.996580, 0.668256, 0.456192], 213 | [0.996775, 0.675541, 0.461314], 214 | [0.996925, 0.682828, 0.466526], 215 | [0.997077, 0.690088, 0.471811], 216 | [0.997186, 0.697349, 0.477182], 217 | [0.997254, 0.704611, 0.482635], 218 | [0.997325, 0.711848, 0.488154], 219 | [0.997351, 0.719089, 0.493755], 220 | [0.997351, 0.726324, 0.499428], 221 | [0.997341, 0.733545, 0.505167], 222 | [0.997285, 0.740772, 0.510983], 223 | [0.997228, 0.747981, 0.516859], 224 | [0.997138, 0.755190, 0.522806], 225 | [0.997019, 0.762398, 0.528821], 226 | [0.996898, 0.769591, 0.534892], 227 | [0.996727, 0.776795, 0.541039], 228 | [0.996571, 0.783977, 0.547233], 229 | [0.996369, 0.791167, 0.553499], 230 | [0.996162, 0.798348, 0.559820], 231 | [0.995932, 0.805527, 0.566202], 232 | [0.995680, 0.812706, 0.572645], 233 | [0.995424, 0.819875, 0.579140], 234 | [0.995131, 0.827052, 0.585701], 235 | [0.994851, 0.834213, 0.592307], 236 | [0.994524, 0.841387, 0.598983], 237 | [0.994222, 0.848540, 0.605696], 238 | [0.993866, 0.855711, 0.612482], 239 | [0.993545, 0.862859, 0.619299], 240 | [0.993170, 0.870024, 0.626189], 241 | [0.992831, 0.877168, 0.633109], 242 | [0.992440, 0.884330, 0.640099], 243 | [0.992089, 0.891470, 0.647116], 244 | [0.991688, 0.898627, 0.654202], 245 | [0.991332, 0.905763, 0.661309], 246 | [0.990930, 0.912915, 0.668481], 247 | [0.990570, 0.920049, 0.675675], 248 | [0.990175, 0.927196, 0.682926], 249 | [0.989815, 0.934329, 0.690198], 250 | [0.989434, 0.941470, 0.697519], 251 | [0.989077, 0.948604, 0.704863], 252 | [0.988717, 0.955742, 0.712242], 253 | [0.988367, 0.962878, 0.719649], 254 | [0.988033, 0.970012, 0.727077], 255 | [0.987691, 0.977154, 0.734536], 256 | [0.987387, 0.984288, 0.742002], 257 | [0.987053, 0.991438, 0.749504] 258 | ] 259 | -------------------------------------------------------------------------------- /rgb/plasma.json: -------------------------------------------------------------------------------- 1 | [ 2 | [0.050383, 0.029803, 0.527975], 3 | [0.063536, 0.028426, 0.533124], 4 | [0.075353, 0.027206, 0.538007], 5 | [0.086222, 0.026125, 0.542658], 6 | [0.096379, 0.025165, 0.547103], 7 | [0.105980, 0.024309, 0.551368], 8 | [0.115124, 0.023556, 0.555468], 9 | [0.123903, 0.022878, 0.559423], 10 | [0.132381, 0.022258, 0.563250], 11 | [0.140603, 0.021687, 0.566959], 12 | [0.148607, 0.021154, 0.570562], 13 | [0.156421, 0.020651, 0.574065], 14 | [0.164070, 0.020171, 0.577478], 15 | [0.171574, 0.019706, 0.580806], 16 | [0.178950, 0.019252, 0.584054], 17 | [0.186213, 0.018803, 0.587228], 18 | [0.193374, 0.018354, 0.590330], 19 | [0.200445, 0.017902, 0.593364], 20 | [0.207435, 0.017442, 0.596333], 21 | [0.214350, 0.016973, 0.599239], 22 | [0.221197, 0.016497, 0.602083], 23 | [0.227983, 0.016007, 0.604867], 24 | [0.234715, 0.015502, 0.607592], 25 | [0.241396, 0.014979, 0.610259], 26 | [0.248032, 0.014439, 0.612868], 27 | [0.254627, 0.013882, 0.615419], 28 | [0.261183, 0.013308, 0.617911], 29 | [0.267703, 0.012716, 0.620346], 30 | [0.274191, 0.012109, 0.622722], 31 | [0.280648, 0.011488, 0.625038], 32 | [0.287076, 0.010855, 0.627295], 33 | [0.293478, 0.010213, 0.629490], 34 | [0.299855, 0.009561, 0.631624], 35 | [0.306210, 0.008902, 0.633694], 36 | [0.312543, 0.008239, 0.635700], 37 | [0.318856, 0.007576, 0.637640], 38 | [0.325150, 0.006915, 0.639512], 39 | [0.331426, 0.006261, 0.641316], 40 | [0.337683, 0.005618, 0.643049], 41 | [0.343925, 0.004991, 0.644710], 42 | [0.350150, 0.004382, 0.646298], 43 | [0.356359, 0.003798, 0.647810], 44 | [0.362553, 0.003243, 0.649245], 45 | [0.368733, 0.002724, 0.650601], 46 | [0.374897, 0.002245, 0.651876], 47 | [0.381047, 0.001814, 0.653068], 48 | [0.387183, 0.001434, 0.654177], 49 | [0.393304, 0.001114, 0.655199], 50 | [0.399411, 0.000859, 0.656133], 51 | [0.405503, 0.000678, 0.656977], 52 | [0.411580, 0.000577, 0.657730], 53 | [0.417642, 0.000564, 0.658390], 54 | [0.423689, 0.000646, 0.658956], 55 | [0.429719, 0.000831, 0.659425], 56 | [0.435734, 0.001127, 0.659797], 57 | [0.441732, 0.001540, 0.660069], 58 | [0.447714, 0.002080, 0.660240], 59 | [0.453677, 0.002755, 0.660310], 60 | [0.459623, 0.003574, 0.660277], 61 | [0.465550, 0.004545, 0.660139], 62 | [0.471457, 0.005678, 0.659897], 63 | [0.477344, 0.006980, 0.659549], 64 | [0.483210, 0.008460, 0.659095], 65 | [0.489055, 0.010127, 0.658534], 66 | [0.494877, 0.011990, 0.657865], 67 | [0.500678, 0.014055, 0.657088], 68 | [0.506454, 0.016333, 0.656202], 69 | [0.512206, 0.018833, 0.655209], 70 | [0.517933, 0.021563, 0.654109], 71 | [0.523633, 0.024532, 0.652901], 72 | [0.529306, 0.027747, 0.651586], 73 | [0.534952, 0.031217, 0.650165], 74 | [0.540570, 0.034950, 0.648640], 75 | [0.546157, 0.038954, 0.647010], 76 | [0.551715, 0.043136, 0.645277], 77 | [0.557243, 0.047331, 0.643443], 78 | [0.562738, 0.051545, 0.641509], 79 | [0.568201, 0.055778, 0.639477], 80 | [0.573632, 0.060028, 0.637349], 81 | [0.579029, 0.064296, 0.635126], 82 | [0.584391, 0.068579, 0.632812], 83 | [0.589719, 0.072878, 0.630408], 84 | [0.595011, 0.077190, 0.627917], 85 | [0.600266, 0.081516, 0.625342], 86 | [0.605485, 0.085854, 0.622686], 87 | [0.610667, 0.090204, 0.619951], 88 | [0.615812, 0.094564, 0.617140], 89 | [0.620919, 0.098934, 0.614257], 90 | [0.625987, 0.103312, 0.611305], 91 | [0.631017, 0.107699, 0.608287], 92 | [0.636008, 0.112092, 0.605205], 93 | [0.640959, 0.116492, 0.602065], 94 | [0.645872, 0.120898, 0.598867], 95 | [0.650746, 0.125309, 0.595617], 96 | [0.655580, 0.129725, 0.592317], 97 | [0.660374, 0.134144, 0.588971], 98 | [0.665129, 0.138566, 0.585582], 99 | [0.669845, 0.142992, 0.582154], 100 | [0.674522, 0.147419, 0.578688], 101 | [0.679160, 0.151848, 0.575189], 102 | [0.683758, 0.156278, 0.571660], 103 | [0.688318, 0.160709, 0.568103], 104 | [0.692840, 0.165141, 0.564522], 105 | [0.697324, 0.169573, 0.560919], 106 | [0.701769, 0.174005, 0.557296], 107 | [0.706178, 0.178437, 0.553657], 108 | [0.710549, 0.182868, 0.550004], 109 | [0.714883, 0.187299, 0.546338], 110 | [0.719181, 0.191729, 0.542663], 111 | [0.723444, 0.196158, 0.538981], 112 | [0.727670, 0.200586, 0.535293], 113 | [0.731862, 0.205013, 0.531601], 114 | [0.736019, 0.209439, 0.527908], 115 | [0.740143, 0.213864, 0.524216], 116 | [0.744232, 0.218288, 0.520524], 117 | [0.748289, 0.222711, 0.516834], 118 | [0.752312, 0.227133, 0.513149], 119 | [0.756304, 0.231555, 0.509468], 120 | [0.760264, 0.235976, 0.505794], 121 | [0.764193, 0.240396, 0.502126], 122 | [0.768090, 0.244817, 0.498465], 123 | [0.771958, 0.249237, 0.494813], 124 | [0.775796, 0.253658, 0.491171], 125 | [0.779604, 0.258078, 0.487539], 126 | [0.783383, 0.262500, 0.483918], 127 | [0.787133, 0.266922, 0.480307], 128 | [0.790855, 0.271345, 0.476706], 129 | [0.794549, 0.275770, 0.473117], 130 | [0.798216, 0.280197, 0.469538], 131 | [0.801855, 0.284626, 0.465971], 132 | [0.805467, 0.289057, 0.462415], 133 | [0.809052, 0.293491, 0.458870], 134 | [0.812612, 0.297928, 0.455338], 135 | [0.816144, 0.302368, 0.451816], 136 | [0.819651, 0.306812, 0.448306], 137 | [0.823132, 0.311261, 0.444806], 138 | [0.826588, 0.315714, 0.441316], 139 | [0.830018, 0.320172, 0.437836], 140 | [0.833422, 0.324635, 0.434366], 141 | [0.836801, 0.329105, 0.430905], 142 | [0.840155, 0.333580, 0.427455], 143 | [0.843484, 0.338062, 0.424013], 144 | [0.846788, 0.342551, 0.420579], 145 | [0.850066, 0.347048, 0.417153], 146 | [0.853319, 0.351553, 0.413734], 147 | [0.856547, 0.356066, 0.410322], 148 | [0.859750, 0.360588, 0.406917], 149 | [0.862927, 0.365119, 0.403519], 150 | [0.866078, 0.369660, 0.400126], 151 | [0.869203, 0.374212, 0.396738], 152 | [0.872303, 0.378774, 0.393355], 153 | [0.875376, 0.383347, 0.389976], 154 | [0.878423, 0.387932, 0.386600], 155 | [0.881443, 0.392529, 0.383229], 156 | [0.884436, 0.397139, 0.379860], 157 | [0.887402, 0.401762, 0.376494], 158 | [0.890340, 0.406398, 0.373130], 159 | [0.893250, 0.411048, 0.369768], 160 | [0.896131, 0.415712, 0.366407], 161 | [0.898984, 0.420392, 0.363047], 162 | [0.901807, 0.425087, 0.359688], 163 | [0.904601, 0.429797, 0.356329], 164 | [0.907365, 0.434524, 0.352970], 165 | [0.910098, 0.439268, 0.349610], 166 | [0.912800, 0.444029, 0.346251], 167 | [0.915471, 0.448807, 0.342890], 168 | [0.918109, 0.453603, 0.339529], 169 | [0.920714, 0.458417, 0.336166], 170 | [0.923287, 0.463251, 0.332801], 171 | [0.925825, 0.468103, 0.329435], 172 | [0.928329, 0.472975, 0.326067], 173 | [0.930798, 0.477867, 0.322697], 174 | [0.933232, 0.482780, 0.319325], 175 | [0.935630, 0.487712, 0.315952], 176 | [0.937990, 0.492667, 0.312575], 177 | [0.940313, 0.497642, 0.309197], 178 | [0.942598, 0.502639, 0.305816], 179 | [0.944844, 0.507658, 0.302433], 180 | [0.947051, 0.512699, 0.299049], 181 | [0.949217, 0.517763, 0.295662], 182 | [0.951344, 0.522850, 0.292275], 183 | [0.953428, 0.527960, 0.288883], 184 | [0.955470, 0.533093, 0.285490], 185 | [0.957469, 0.538250, 0.282096], 186 | [0.959424, 0.543431, 0.278701], 187 | [0.961336, 0.548636, 0.275305], 188 | [0.963203, 0.553865, 0.271909], 189 | [0.965024, 0.559118, 0.268513], 190 | [0.966798, 0.564396, 0.265118], 191 | [0.968526, 0.569700, 0.261721], 192 | [0.970205, 0.575028, 0.258325], 193 | [0.971835, 0.580382, 0.254931], 194 | [0.973416, 0.585761, 0.251540], 195 | [0.974947, 0.591165, 0.248151], 196 | [0.976428, 0.596595, 0.244767], 197 | [0.977856, 0.602051, 0.241387], 198 | [0.979233, 0.607532, 0.238013], 199 | [0.980556, 0.613039, 0.234646], 200 | [0.981826, 0.618572, 0.231287], 201 | [0.983041, 0.624131, 0.227937], 202 | [0.984199, 0.629718, 0.224595], 203 | [0.985301, 0.635330, 0.221265], 204 | [0.986345, 0.640969, 0.217948], 205 | [0.987332, 0.646633, 0.214648], 206 | [0.988260, 0.652325, 0.211364], 207 | [0.989128, 0.658043, 0.208100], 208 | [0.989935, 0.663787, 0.204859], 209 | [0.990681, 0.669558, 0.201642], 210 | [0.991365, 0.675355, 0.198453], 211 | [0.991985, 0.681179, 0.195295], 212 | [0.992541, 0.687030, 0.192170], 213 | [0.993032, 0.692907, 0.189084], 214 | [0.993456, 0.698810, 0.186041], 215 | [0.993814, 0.704741, 0.183043], 216 | [0.994103, 0.710698, 0.180097], 217 | [0.994324, 0.716681, 0.177208], 218 | [0.994474, 0.722691, 0.174381], 219 | [0.994553, 0.728728, 0.171622], 220 | [0.994561, 0.734791, 0.168938], 221 | [0.994495, 0.740880, 0.166335], 222 | [0.994355, 0.746995, 0.163821], 223 | [0.994141, 0.753137, 0.161404], 224 | [0.993851, 0.759304, 0.159092], 225 | [0.993482, 0.765499, 0.156891], 226 | [0.993033, 0.771720, 0.154808], 227 | [0.992505, 0.777967, 0.152855], 228 | [0.991897, 0.784239, 0.151042], 229 | [0.991209, 0.790537, 0.149377], 230 | [0.990439, 0.796859, 0.147870], 231 | [0.989587, 0.803205, 0.146529], 232 | [0.988648, 0.809579, 0.145357], 233 | [0.987621, 0.815978, 0.144363], 234 | [0.986509, 0.822401, 0.143557], 235 | [0.985314, 0.828846, 0.142945], 236 | [0.984031, 0.835315, 0.142528], 237 | [0.982653, 0.841812, 0.142303], 238 | [0.981190, 0.848329, 0.142279], 239 | [0.979644, 0.854866, 0.142453], 240 | [0.977995, 0.861432, 0.142808], 241 | [0.976265, 0.868016, 0.143351], 242 | [0.974443, 0.874622, 0.144061], 243 | [0.972530, 0.881250, 0.144923], 244 | [0.970533, 0.887896, 0.145919], 245 | [0.968443, 0.894564, 0.147014], 246 | [0.966271, 0.901249, 0.148180], 247 | [0.964021, 0.907950, 0.149370], 248 | [0.961681, 0.914672, 0.150520], 249 | [0.959276, 0.921407, 0.151566], 250 | [0.956808, 0.928152, 0.152409], 251 | [0.954287, 0.934908, 0.152921], 252 | [0.951726, 0.941671, 0.152925], 253 | [0.949151, 0.948435, 0.152178], 254 | [0.946602, 0.955190, 0.150328], 255 | [0.944152, 0.961916, 0.146861], 256 | [0.941896, 0.968590, 0.140956], 257 | [0.940015, 0.975158, 0.131326] 258 | ] 259 | -------------------------------------------------------------------------------- /rgb/viridis.json: -------------------------------------------------------------------------------- 1 | [ 2 | [0.267004, 0.004874, 0.329415], 3 | [0.268510, 0.009605, 0.335427], 4 | [0.269944, 0.014625, 0.341379], 5 | [0.271305, 0.019942, 0.347269], 6 | [0.272594, 0.025563, 0.353093], 7 | [0.273809, 0.031497, 0.358853], 8 | [0.274952, 0.037752, 0.364543], 9 | [0.276022, 0.044167, 0.370164], 10 | [0.277018, 0.050344, 0.375715], 11 | [0.277941, 0.056324, 0.381191], 12 | [0.278791, 0.062145, 0.386592], 13 | [0.279566, 0.067836, 0.391917], 14 | [0.280267, 0.073417, 0.397163], 15 | [0.280894, 0.078907, 0.402329], 16 | [0.281446, 0.084320, 0.407414], 17 | [0.281924, 0.089666, 0.412415], 18 | [0.282327, 0.094955, 0.417331], 19 | [0.282656, 0.100196, 0.422160], 20 | [0.282910, 0.105393, 0.426902], 21 | [0.283091, 0.110553, 0.431554], 22 | [0.283197, 0.115680, 0.436115], 23 | [0.283229, 0.120777, 0.440584], 24 | [0.283187, 0.125848, 0.444960], 25 | [0.283072, 0.130895, 0.449241], 26 | [0.282884, 0.135920, 0.453427], 27 | [0.282623, 0.140926, 0.457517], 28 | [0.282290, 0.145912, 0.461510], 29 | [0.281887, 0.150881, 0.465405], 30 | [0.281412, 0.155834, 0.469201], 31 | [0.280868, 0.160771, 0.472899], 32 | [0.280255, 0.165693, 0.476498], 33 | [0.279574, 0.170599, 0.479997], 34 | [0.278826, 0.175490, 0.483397], 35 | [0.278012, 0.180367, 0.486697], 36 | [0.277134, 0.185228, 0.489898], 37 | [0.276194, 0.190074, 0.493001], 38 | [0.275191, 0.194905, 0.496005], 39 | [0.274128, 0.199721, 0.498911], 40 | [0.273006, 0.204520, 0.501721], 41 | [0.271828, 0.209303, 0.504434], 42 | [0.270595, 0.214069, 0.507052], 43 | [0.269308, 0.218818, 0.509577], 44 | [0.267968, 0.223549, 0.512008], 45 | [0.266580, 0.228262, 0.514349], 46 | [0.265145, 0.232956, 0.516599], 47 | [0.263663, 0.237631, 0.518762], 48 | [0.262138, 0.242286, 0.520837], 49 | [0.260571, 0.246922, 0.522828], 50 | [0.258965, 0.251537, 0.524736], 51 | [0.257322, 0.256130, 0.526563], 52 | [0.255645, 0.260703, 0.528312], 53 | [0.253935, 0.265254, 0.529983], 54 | [0.252194, 0.269783, 0.531579], 55 | [0.250425, 0.274290, 0.533103], 56 | [0.248629, 0.278775, 0.534556], 57 | [0.246811, 0.283237, 0.535941], 58 | [0.244972, 0.287675, 0.537260], 59 | [0.243113, 0.292092, 0.538516], 60 | [0.241237, 0.296485, 0.539709], 61 | [0.239346, 0.300855, 0.540844], 62 | [0.237441, 0.305202, 0.541921], 63 | [0.235526, 0.309527, 0.542944], 64 | [0.233603, 0.313828, 0.543914], 65 | [0.231674, 0.318106, 0.544834], 66 | [0.229739, 0.322361, 0.545706], 67 | [0.227802, 0.326594, 0.546532], 68 | [0.225863, 0.330805, 0.547314], 69 | [0.223925, 0.334994, 0.548053], 70 | [0.221989, 0.339161, 0.548752], 71 | [0.220057, 0.343307, 0.549413], 72 | [0.218130, 0.347432, 0.550038], 73 | [0.216210, 0.351535, 0.550627], 74 | [0.214298, 0.355619, 0.551184], 75 | [0.212395, 0.359683, 0.551710], 76 | [0.210503, 0.363727, 0.552206], 77 | [0.208623, 0.367752, 0.552675], 78 | [0.206756, 0.371758, 0.553117], 79 | [0.204903, 0.375746, 0.553533], 80 | [0.203063, 0.379716, 0.553925], 81 | [0.201239, 0.383670, 0.554294], 82 | [0.199430, 0.387607, 0.554642], 83 | [0.197636, 0.391528, 0.554969], 84 | [0.195860, 0.395433, 0.555276], 85 | [0.194100, 0.399323, 0.555565], 86 | [0.192357, 0.403199, 0.555836], 87 | [0.190631, 0.407061, 0.556089], 88 | [0.188923, 0.410910, 0.556326], 89 | [0.187231, 0.414746, 0.556547], 90 | [0.185556, 0.418570, 0.556753], 91 | [0.183898, 0.422383, 0.556944], 92 | [0.182256, 0.426184, 0.557120], 93 | [0.180629, 0.429975, 0.557282], 94 | [0.179019, 0.433756, 0.557430], 95 | [0.177423, 0.437527, 0.557565], 96 | [0.175841, 0.441290, 0.557685], 97 | [0.174274, 0.445044, 0.557792], 98 | [0.172719, 0.448791, 0.557885], 99 | [0.171176, 0.452530, 0.557965], 100 | [0.169646, 0.456262, 0.558030], 101 | [0.168126, 0.459988, 0.558082], 102 | [0.166617, 0.463708, 0.558119], 103 | [0.165117, 0.467423, 0.558141], 104 | [0.163625, 0.471133, 0.558148], 105 | [0.162142, 0.474838, 0.558140], 106 | [0.160665, 0.478540, 0.558115], 107 | [0.159194, 0.482237, 0.558073], 108 | [0.157729, 0.485932, 0.558013], 109 | [0.156270, 0.489624, 0.557936], 110 | [0.154815, 0.493313, 0.557840], 111 | [0.153364, 0.497000, 0.557724], 112 | [0.151918, 0.500685, 0.557587], 113 | [0.150476, 0.504369, 0.557430], 114 | [0.149039, 0.508051, 0.557250], 115 | [0.147607, 0.511733, 0.557049], 116 | [0.146180, 0.515413, 0.556823], 117 | [0.144759, 0.519093, 0.556572], 118 | [0.143343, 0.522773, 0.556295], 119 | [0.141935, 0.526453, 0.555991], 120 | [0.140536, 0.530132, 0.555659], 121 | [0.139147, 0.533812, 0.555298], 122 | [0.137770, 0.537492, 0.554906], 123 | [0.136408, 0.541173, 0.554483], 124 | [0.135066, 0.544853, 0.554029], 125 | [0.133743, 0.548535, 0.553541], 126 | [0.132444, 0.552216, 0.553018], 127 | [0.131172, 0.555899, 0.552459], 128 | [0.129933, 0.559582, 0.551864], 129 | [0.128729, 0.563265, 0.551229], 130 | [0.127568, 0.566949, 0.550556], 131 | [0.126453, 0.570633, 0.549841], 132 | [0.125394, 0.574318, 0.549086], 133 | [0.124395, 0.578002, 0.548287], 134 | [0.123463, 0.581687, 0.547445], 135 | [0.122606, 0.585371, 0.546557], 136 | [0.121831, 0.589055, 0.545623], 137 | [0.121148, 0.592739, 0.544641], 138 | [0.120565, 0.596422, 0.543611], 139 | [0.120092, 0.600104, 0.542530], 140 | [0.119738, 0.603785, 0.541400], 141 | [0.119512, 0.607464, 0.540218], 142 | [0.119423, 0.611141, 0.538982], 143 | [0.119483, 0.614817, 0.537692], 144 | [0.119699, 0.618490, 0.536347], 145 | [0.120081, 0.622161, 0.534946], 146 | [0.120638, 0.625828, 0.533488], 147 | [0.121380, 0.629492, 0.531973], 148 | [0.122312, 0.633153, 0.530398], 149 | [0.123444, 0.636809, 0.528763], 150 | [0.124780, 0.640461, 0.527068], 151 | [0.126326, 0.644107, 0.525311], 152 | [0.128087, 0.647749, 0.523491], 153 | [0.130067, 0.651384, 0.521608], 154 | [0.132268, 0.655014, 0.519661], 155 | [0.134692, 0.658636, 0.517649], 156 | [0.137339, 0.662252, 0.515571], 157 | [0.140210, 0.665859, 0.513427], 158 | [0.143303, 0.669459, 0.511215], 159 | [0.146616, 0.673050, 0.508936], 160 | [0.150148, 0.676631, 0.506589], 161 | [0.153894, 0.680203, 0.504172], 162 | [0.157851, 0.683765, 0.501686], 163 | [0.162016, 0.687316, 0.499129], 164 | [0.166383, 0.690856, 0.496502], 165 | [0.170948, 0.694384, 0.493803], 166 | [0.175707, 0.697900, 0.491033], 167 | [0.180653, 0.701402, 0.488189], 168 | [0.185783, 0.704891, 0.485273], 169 | [0.191090, 0.708366, 0.482284], 170 | [0.196571, 0.711827, 0.479221], 171 | [0.202219, 0.715272, 0.476084], 172 | [0.208030, 0.718701, 0.472873], 173 | [0.214000, 0.722114, 0.469588], 174 | [0.220124, 0.725509, 0.466226], 175 | [0.226397, 0.728888, 0.462789], 176 | [0.232815, 0.732247, 0.459277], 177 | [0.239374, 0.735588, 0.455688], 178 | [0.246070, 0.738910, 0.452024], 179 | [0.252899, 0.742211, 0.448284], 180 | [0.259857, 0.745492, 0.444467], 181 | [0.266941, 0.748751, 0.440573], 182 | [0.274149, 0.751988, 0.436601], 183 | [0.281477, 0.755203, 0.432552], 184 | [0.288921, 0.758394, 0.428426], 185 | [0.296479, 0.761561, 0.424223], 186 | [0.304148, 0.764704, 0.419943], 187 | [0.311925, 0.767822, 0.415586], 188 | [0.319809, 0.770914, 0.411152], 189 | [0.327796, 0.773980, 0.406640], 190 | [0.335885, 0.777018, 0.402049], 191 | [0.344074, 0.780029, 0.397381], 192 | [0.352360, 0.783011, 0.392636], 193 | [0.360741, 0.785964, 0.387814], 194 | [0.369214, 0.788888, 0.382914], 195 | [0.377779, 0.791781, 0.377939], 196 | [0.386433, 0.794644, 0.372886], 197 | [0.395174, 0.797475, 0.367757], 198 | [0.404001, 0.800275, 0.362552], 199 | [0.412913, 0.803041, 0.357269], 200 | [0.421908, 0.805774, 0.351910], 201 | [0.430983, 0.808473, 0.346476], 202 | [0.440137, 0.811138, 0.340967], 203 | [0.449368, 0.813768, 0.335384], 204 | [0.458674, 0.816363, 0.329727], 205 | [0.468053, 0.818921, 0.323998], 206 | [0.477504, 0.821444, 0.318195], 207 | [0.487026, 0.823929, 0.312321], 208 | [0.496615, 0.826376, 0.306377], 209 | [0.506271, 0.828786, 0.300362], 210 | [0.515992, 0.831158, 0.294279], 211 | [0.525776, 0.833491, 0.288127], 212 | [0.535621, 0.835785, 0.281908], 213 | [0.545524, 0.838039, 0.275626], 214 | [0.555484, 0.840254, 0.269281], 215 | [0.565498, 0.842430, 0.262877], 216 | [0.575563, 0.844566, 0.256415], 217 | [0.585678, 0.846661, 0.249897], 218 | [0.595839, 0.848717, 0.243329], 219 | [0.606045, 0.850733, 0.236712], 220 | [0.616293, 0.852709, 0.230052], 221 | [0.626579, 0.854645, 0.223353], 222 | [0.636902, 0.856542, 0.216620], 223 | [0.647257, 0.858400, 0.209861], 224 | [0.657642, 0.860219, 0.203082], 225 | [0.668054, 0.861999, 0.196293], 226 | [0.678489, 0.863742, 0.189503], 227 | [0.688944, 0.865448, 0.182725], 228 | [0.699415, 0.867117, 0.175971], 229 | [0.709898, 0.868751, 0.169257], 230 | [0.720391, 0.870350, 0.162603], 231 | [0.730889, 0.871916, 0.156029], 232 | [0.741388, 0.873449, 0.149561], 233 | [0.751884, 0.874951, 0.143228], 234 | [0.762373, 0.876424, 0.137064], 235 | [0.772852, 0.877868, 0.131109], 236 | [0.783315, 0.879285, 0.125405], 237 | [0.793760, 0.880678, 0.120005], 238 | [0.804182, 0.882046, 0.114965], 239 | [0.814576, 0.883393, 0.110347], 240 | [0.824940, 0.884720, 0.106217], 241 | [0.835270, 0.886029, 0.102646], 242 | [0.845561, 0.887322, 0.099702], 243 | [0.855810, 0.888601, 0.097452], 244 | [0.866013, 0.889868, 0.095953], 245 | [0.876168, 0.891125, 0.095250], 246 | [0.886271, 0.892374, 0.095374], 247 | [0.896320, 0.893616, 0.096335], 248 | [0.906311, 0.894855, 0.098125], 249 | [0.916242, 0.896091, 0.100717], 250 | [0.926106, 0.897330, 0.104071], 251 | [0.935904, 0.898570, 0.108131], 252 | [0.945636, 0.899815, 0.112838], 253 | [0.955300, 0.901065, 0.118128], 254 | [0.964894, 0.902323, 0.123941], 255 | [0.974417, 0.903590, 0.130215], 256 | [0.983868, 0.904867, 0.136897], 257 | [0.993248, 0.906157, 0.143936] 258 | ] 259 | -------------------------------------------------------------------------------- /utils/hex2rgb.js: -------------------------------------------------------------------------------- 1 | 'use strict' 2 | 3 | module.exports = function hex2rgb (hex) { 4 | return { 5 | // skip # at position 0 6 | r: parseInt(hex.slice(1, 3), 16) / 255, 7 | g: parseInt(hex.slice(3, 5), 16) / 255, 8 | b: parseInt(hex.slice(5, 7), 16) / 255 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /utils/interpolate.js: -------------------------------------------------------------------------------- 1 | 'use strict' 2 | 3 | var hex2rgb = require('./hex2rgb') 4 | var rgb2hex = require('./rgb2hex') 5 | 6 | function interpolate (a, b) { 7 | a = hex2rgb(a) 8 | b = hex2rgb(b) 9 | 10 | var ar = a.r 11 | var ag = a.g 12 | var ab = a.b 13 | var br = b.r - ar 14 | var bg = b.g - ag 15 | var bb = b.b - ab 16 | 17 | return function (t) { 18 | return rgb2hex({ 19 | r: ar + br * t, 20 | g: ag + bg * t, 21 | b: ab + bb * t 22 | }) 23 | } 24 | } 25 | 26 | function interpolateArray (scaleArr) { 27 | var N = scaleArr.length - 2 // -1 for spacings, -1 for number of interpolate fns 28 | var intervalWidth = 1 / N 29 | var intervals = [] 30 | 31 | for (var i = 0; i <= N; i++) { 32 | intervals[i] = interpolate(scaleArr[i], scaleArr[i + 1]) 33 | } 34 | 35 | return function (t) { 36 | if (t < 0 || t > 1) throw new Error('Outside the allowed range of [0, 1]') 37 | 38 | var i = Math.floor(t * N) 39 | var intervalOffset = i * intervalWidth 40 | 41 | return intervals[i](t / intervalWidth - intervalOffset / intervalWidth) 42 | } 43 | } 44 | 45 | module.exports = { 46 | interpolate: interpolate, 47 | interpolateArray: interpolateArray 48 | } 49 | -------------------------------------------------------------------------------- /utils/rgb2hex.js: -------------------------------------------------------------------------------- 1 | 'use strict' 2 | 3 | function zeroPadHex (hexStr) { 4 | return '00'.slice(hexStr.length) + hexStr 5 | } 6 | 7 | module.exports = function rgb2hex (rgb) { 8 | // Map channel triplet into hex color code 9 | return '#' + [rgb.r, rgb.g, rgb.b] 10 | // Convert to hex (map [0, 1] => [0, 255] => Z => [0x0, 0xff]) 11 | .map(function (ch) { return Math.round(ch * 255).toString(16) }) 12 | // Make sure each channel is two digits long 13 | .map(zeroPadHex) 14 | .join('') 15 | } 16 | -------------------------------------------------------------------------------- /viridis.js: -------------------------------------------------------------------------------- 1 | 'use strict' 2 | 3 | module.exports = require('./utils/interpolate').interpolateArray(require('./hex/viridis.json')) 4 | --------------------------------------------------------------------------------