0
A
回答
1
可以使用數組作爲源對給定值的「溫度」。
例如:
private static Color[] colors =
{
Color.FromArgb(155, 188, 255), // 40000
Color.FromArgb(155, 188, 255), // 39500
Color.FromArgb(155, 188, 255), // 39000
Color.FromArgb(155, 188, 255), // 38500
Color.FromArgb(156, 188, 255), // 38000
Color.FromArgb(156, 188, 255), // 37500
Color.FromArgb(156, 189, 255), // 37000
Color.FromArgb(156, 189, 255), // 36500
Color.FromArgb(156, 189, 255), // 36000
Color.FromArgb(157, 189, 255), // 35500
Color.FromArgb(157, 189, 255), // 35000
Color.FromArgb(157, 189, 255), // 34500
Color.FromArgb(157, 189, 255), // 34000
Color.FromArgb(157, 189, 255), // 33500
Color.FromArgb(158, 190, 255), // 33000
Color.FromArgb(158, 190, 255), // 32500
Color.FromArgb(158, 190, 255), // 32000
Color.FromArgb(158, 190, 255), // 31500
Color.FromArgb(159, 190, 255), // 31000
Color.FromArgb(159, 190, 255), // 30500
Color.FromArgb(159, 191, 255), // 30000
Color.FromArgb(159, 191, 255), // 29500
Color.FromArgb(160, 191, 255), // 29000
Color.FromArgb(160, 191, 255), // 28500
Color.FromArgb(160, 191, 255), // 28000
Color.FromArgb(161, 192, 255), // 27500
Color.FromArgb(161, 192, 255), // 27000
Color.FromArgb(161, 192, 255), // 26500
Color.FromArgb(162, 192, 255), // 26000
Color.FromArgb(162, 193, 255), // 25500
Color.FromArgb(163, 193, 255), // 25000
Color.FromArgb(163, 193, 255), // 24500
Color.FromArgb(163, 194, 255), // 24000
Color.FromArgb(164, 194, 255), // 23500
Color.FromArgb(164, 194, 255), // 23000
Color.FromArgb(165, 195, 255), // 22500
Color.FromArgb(166, 195, 255), // 22000
Color.FromArgb(166, 195, 255), // 21500
Color.FromArgb(167, 196, 255), // 21000
Color.FromArgb(168, 196, 255), // 20500
Color.FromArgb(168, 197, 255), // 20000
Color.FromArgb(169, 197, 255), // 19500
Color.FromArgb(170, 198, 255), // 19000
Color.FromArgb(171, 198, 255), // 18500
Color.FromArgb(172, 199, 255), // 18000
Color.FromArgb(173, 200, 255), // 17500
Color.FromArgb(174, 200, 255), // 17000
Color.FromArgb(175, 201, 255), // 16500
Color.FromArgb(176, 202, 255), // 16000
Color.FromArgb(177, 203, 255), // 15500
Color.FromArgb(179, 204, 255), // 15000
Color.FromArgb(180, 205, 255), // 14500
Color.FromArgb(182, 206, 255), // 14000
Color.FromArgb(184, 207, 255), // 13500
Color.FromArgb(186, 208, 255), // 13000
Color.FromArgb(188, 210, 255), // 12500
Color.FromArgb(191, 211, 255), // 12000
Color.FromArgb(193, 213, 255), // 11500
Color.FromArgb(196, 215, 255), // 11000
Color.FromArgb(200, 217, 255), // 10500
Color.FromArgb(204, 219, 255), // 10000
Color.FromArgb(208, 222, 255), // 9500
Color.FromArgb(214, 225, 255), // 9000
Color.FromArgb(220, 229, 255), // 8500
Color.FromArgb(227, 233, 255), // 8000
Color.FromArgb(235, 238, 255), // 7500
Color.FromArgb(245, 243, 255), // 7000
Color.FromArgb(255, 249, 253), // 6500
Color.FromArgb(255, 243, 239), // 6000
Color.FromArgb(255, 236, 224), // 5500
Color.FromArgb(255, 228, 206), // 5000
Color.FromArgb(255, 219, 186), // 4500
Color.FromArgb(255, 209, 163), // 4000
Color.FromArgb(255, 196, 137), // 3500
Color.FromArgb(255, 180, 107), // 3000
Color.FromArgb(255, 161, 72), // 2500
Color.FromArgb(255, 137, 18), // 2000
Color.FromArgb(255, 109, 0), // 1500
Color.FromArgb(255, 51, 0), // 1000
};
(來源:Display temperature as a color with C#?)
與此源可以在79種顏色劃分的值。
剩下的只是爲每個數據集中的每個像素值繪製像素。
代碼示例:
public Color getPixelColor(double value) {
return colors[(int)(value/range)];
}
public void drawPixel(double value, int x, int y) {
Brush aBrush = new SolidColorBrush(getPixelColor(value));
Graphics g = this.CreateGraphics();
g.FillRectangle(aBrush, x, y, 1, 1);
}
相關問題
- 1. 在libgdx中繪製漸變的子集
- 2. 繪製漸變
- 3. 繪製漸變圓
- 4. 後記:繪製漸變
- 5. 用LibGDX繪製漸變線
- 6. 繪製橢圓漸變
- 7. 繪製漸變標籤
- 8. 在Android中繪製圓錐漸變
- 9. 在Python中使用PIL繪製漸變
- 10. 在黑莓中繪製徑向漸變?
- 11. 在SpriteKit中繪製漸變線?
- 12. 在cocos2d中連續繪製漸變線
- 13. 如何繪製漸變iOS中
- 14. 畫布:用漸變漸變繪製大量元素(模擬角度漸變)
- 15. opengl es:用漸變漸變繪製紋理
- 16. 如何在Android中使用漸變繪製漸進環?
- 17. 繪製凝聚數據集
- 18. iOS - 繪製漸變 - 斯威夫特
- 19. 基R繪製漸變線,可能嗎?
- 20. 用UIView繪製漸變畫()用swift
- 21. Android線性漸變可繪製
- 22. 繪製漸變像UITabBar與tintColor
- 23. 用漸變色繪製線條
- 24. 如何繪製沿弧的漸變
- 25. iphone在多邊形內繪製漸變
- 26. 繪製漸變色在弧圓邊
- 27. 在畫布上繪製漸變形狀
- 28. Android XML可繪製透明漸變
- 29. 繪製球體與放射漸變
- 30. 如何繪製彩色漸變筆觸
開始編碼與[此](http://stackoverflow.com/questions/30339553/fill-panel-with-gradient-in-three-colors),並用結合[這個](http://stackoverflow.com/questions/12108534/drawing-a-polygon-according-to-the-input-coordinates)。簡單。 – rene