如何在 WPF 中的 Canvas 上绘制数千个点?

How to draw thousands of points on a Canvas in WPF?

我正在为一款热门游戏开发热图(或者说热散点图工具)工具。我是 WPF 的新手,现在我需要在 WPF 的 Canvas 中绘制数千个点,并试图找到这样做的最佳方法。

每个点都有几个属性: ARGB 中的 X、Y 坐标和颜色(基于热值的 alpha,单色而非多色)。

到目前为止,我的想法是采用一种方法,该方法接受坐标和 A、R、G 和 B 值,并向 canvas 的子对象添加一个椭圆。这似乎不是最有创意的选择,所以我想问问是否有人知道更好的方法来做我想做的事情。

您可以参考这个article written by Charles Petzold - where he explains how to use The DrawingVisual Solution来做同样的事情,同时确保高性能。