title: Calculate eCharts Heatmap colour in non-linear fashion
body: <p>I am trying to colour an eCharts Heatmap in a non-linear fashion. As default, if I put 4 points of colour with a min-max as 100-0, value 100 will be color[0], value 66 will be colour[1], value 33 will be colour[2] and 0 will be colour [4]. And it will calculate the colour based on the value.</p>
  <p>The thing is I need colour[1] to be position 80 and colour[2] to be on 30.</p>
  <p>My current setup is as follows:</p>
  <pre><code>visualMap: {
        top: 0,
        left: 'center',
        orient: 'horizontal',
        min: 0,
        max: 100,
        calculable: 'true',
        color: ['green', 'yellow' , 'red', 'darkred'],
      },
  </code></pre>
  <p>I would like to tell eCharts something like</p>
  <pre><code>visualMap: {
        min: 0,
        max: 100,
        value: [100, 80, 30, 0] // something on these lines
        color: ['green', 'yellow' , 'red', 'darkred'],
      },
  </code></pre>
  <p>I have a solution, but that is too specific, which when I change values, it will have to be recalculated, which is passing an array of 11 colours, so colour[0] is green, colour [2] will be yellow, colour[6] is red and color[10] is darkred. The remaining colours would have to be calculated in a gradient linear fashion. The problem is that I might need to calculate the points dynamically, (i.e 20 and 70)</p>
  <p>I also tried with multiple visualmaps = [] but without success.</p>
  <p>Any help would be greatly appreciated.</p>