python - 以可重现的方式从相似的数字中创建不同的颜色

标签 python user-interface colors calendar

我有一个 parking 场预订系统。对于任何给定的一天,都有一个小数预订率。

我需要显示一年中的费率日历,以便管理员可以跟踪价格上涨的位置,并快速检查价格是否合适。

我的想法是创建一个颜色键并将它们映射到我们一年中使用的不同比率。只需一点 CSS 即可在日历上显示这些内容。那会很漂亮。

乍一看这真的很简单:

  • 我声明了“足够明显”颜色的数量( map 颜色是一个好的开始)
  • 我对不同的价格进行排序,并将它们合理地分配给一种颜色。

但是当管理层的 Bob 犯了错误并添加了一个新的低价时会发生什么?所有的利率都被分流了一种颜色。 Bob 实际上并没有破坏任何东西,但是当页面刷新时,他看起来改变了整个系统。外观在这里很重要。

如果没有真的令人厌烦的存储/检索过程,是否有一种好方法可以将我的费率“散列”为一组较小的良好的独特/映射颜色?


或者这是疯了吗?我是否应该在最小值和最大值之间反转“热图”,以便最低速率显示白色,最高速率显示深红色?这很容易做到,Bob 的失误仍然会产生影响,但它们不会旋转整个颜色库。

热图的问题是在大范围内靠得很近的数字将显示为几乎相同的颜色。这就是我要解决的全部问题 ☹

最佳答案

是的,hash/bitwise answers on this question似乎在做正确的事。
这是我的 python 实现:

def colourise(s):
    # Returns a RGB tuple.
    h = hash(str(s))
    return ((h & 0xFF0000) >> 16), ((h & 0x00FF00) >> 8), (h & 0x0000FF)

关于python - 以可重现的方式从相似的数字中创建不同的颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36449897/

相关文章:

android - Android UI设计有 “best practices”的列表吗?

c# - 将颜色分配给值以显示与颜色分析图的对比

file - PyQt 打开文件对话框 - 显示路径名称

python - 如何用 bash 脚本杀死 python 脚本

python - 通过value_counts()将一个dataframe分成两个DF

python - 将非零值替换为 1

c++ - 如何正确清理 QWidget/管理一组窗口?

MATLAB:使用自定义颜色图绘制栅格图

vba - 选项卡 ColorIndex 重置 excel vba

python - 迭代python中不断增长的集合