作者热门文章
- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
例如,我绘制了一个饼图,其中有 n 个组件,并且我将它们的百分比值放在一个数组中。现在我更新了百分比数组,我想重新绘制饼图。是否有任何算法可以以最少的颜色变化来绘制它?我当时认为 A* 可能是最佳解决方案,但很难找到解决此问题的启发式方法。
最佳答案
就我个人而言,我不会打扰我只是重新绘制饼图。我预计通过不重新绘制图表的未更改部分而节省的时间将被花在弄清楚要更改的内容上的时间所淹没。
不过,这里有一个想法:
将您的饼图绘制为一组 100 个排列成圆形的三角形。如果 100 不足以使图表看起来漂亮,请选择 100 的某个整数倍。假设段 A 是原始图表的 20%,并且是图表中的第一个(从 12 点顺时针方向计算)段。在绘画时,只需根据需要给三角形 1-20 上色。如果 A 段扩展到 25%,则重新绘制三角形 21-25。等等。
我认为我从未见过其中百分比分数在视觉上有意义的饼图,因此我不会为处理诸如 23.8% 之类的值而费心,我只是将它们四舍五入。
关于algorithm - 什么是用最少的重绘修改饼图的优化算法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19854558/
我是一名优秀的程序员,十分优秀!