値の大きさをサーモグラフィのような色(値が低い順に 青→水色→緑→黄色→赤 となるような色)に変換するには、色相環(Hue)を使います。 #include <stdio.h> #include <math.h> int ColorScaleBCGYR( double in_value ) { // 0.0~1.0 の範囲の値をサーモグラフィみたいな色にする // 0.0 1.0 // 青 水 緑 黄 赤 // 最小値以下 = 青 // 最大値以上 = 赤 int ret; int a = 255; // alpha値 int r, g, b; // RGB値 double value = in_value; double tmp_val = cos( 4 * M_PI * value ); int col_val = (int)( ( -tmp_val / 2 + 0.5 ) * 255