Я работаю над тепловой картой, состоящей из таблицы HTML. Эта таблица содержит n и имеет самое низкое значение и значение наивысшее значение (самое высокое всегда выше, чем самое низкое). Каждая ячейка имеет ячейку . Все эти значения являются ints.Вычисление цветов тепловой карты
Клетки с наименьшим значением должны быть светло-голубыми, масштабирующимися до точки, где ячейки с самым высоким значением являются темно-красными. См градиента ниже для идеального диапазона:
Для вычисления значения шестнадцатеричного цвета каждой отдельной клетки, я смотрю на низких и высших значений из таблицы и общей значения ячейки , передавая их в метод, который возвращает шестнадцатеричный RGB, готовый для использования с фоном HTML-стиля.
Вот метод до сих пор:
public string ConvertTotalToRgb(int low, int high, int cell)
{
int range = high - low;
int main = 255 * cell/ range;
string hexR = main.ToString("X2");
int flip = 255 * (1 - (cell/ range));
string hexB = flip.ToString("X2");
return hexR + "00" + hexB;
}
При значении 0 низкого и значение 235 высокого, этот метод возвращает следующую таблицу (значения ячеек находятся в клетках).
Пример случая: Если низкий было 20, высокий был 400 и клеток было 60, я хотел бы метод, возвращая RGB гекс цвета около 15,8% пути по градиент.
400 - 20 = 380
380/60 = 6.33
100/6.33 = 15.8
Я знаю, что эта формула не совсем точна, но отчасти поэтому я прошу о помощи здесь.
Я сделал это так далеко, но я действительно не уверен, как действовать дальше. Любая помощь очень ценится!
Ваш вопрос действительно запутан. Что выглядит таблица HTML? – Sayse
Я буквально положил изображение таблицы в вопрос, прямо внизу:/ – Djentleman
Я неправильно понял тогда .. откуда взялись значения? – Sayse