【问题标题】:Selecting aesthetically pleasing random colors选择美观的随机颜色
【发布时间】:2011-07-07 04:02:45
【问题描述】:

我有一组类别(数量根据特定状态而变化),我需要为每个类别分配一个唯一的颜色。

我尝试过使用随机颜色,但它们看起来很糟糕,所以我需要一种生成相互适合的随机颜色的方法。

【问题讨论】:

  • 我假设您是在要求我们弄清楚这种随机方法是如何工作的?我现在可以告诉你,它绝对不会是随机的。对于代码如何知道两种颜色是“奇怪”还是“有趣”,您是否有特定的算法?
  • 我需要例如两种不同的颜色,西装(第一个适合第二个)我不知道如何解释更多,因为我的英语不太好..例如我需要一个特定的颜色和同一颜色的所有可能的独特程度都好看,并且每个类别的颜色都适合其他颜色。
  • 看看这个网站有什么想法:colorschemedesigner.com - 本质上,它会生成一种颜色,两种较浅/较深的颜色,然后是一些与之相配的颜色。我不确定它使用什么计算,但这个想法是合理的。

标签: c# .net colors


【解决方案1】:

您应该研究色彩理论和互补色;这将为您提供可以很好地协同工作的颜色。

看看Color Scheme Designer。使用四色模式来了解如何组合 4 种颜色和不同的色调,从而在图像中形成许多不同的区域。

这里有一个colour shades chartsome examples 可以帮助你。

【讨论】:

  • 是的,这看起来很棒,但是如何创建或使用他们用来制作这个的方法。
  • 你需要一个数据结构来保存颜色和它们的补色,一个大的查找表。首先随机选择一种颜色,然后从那里选择其他颜色。我不得不承认我不知道如何生成查找表,这对你来说是一个练习:)
  • @just_name - 我在我的答案中添加了几个链接,以帮助您入门。该表包含一个色调(作为度数),可让您找到互补色。
【解决方案2】:

要扩展之前的答案,您可以使用http://www.colr.org/ 之类的服务(从图像创建配色方案)来创建保证“不奇怪”的配色方案,然后从该方案中选择一种随机颜色。

【讨论】:

    【解决方案3】:

    为什么不创建一个您认为彼此适合的颜色列表(例如基本的红色、绿色、蓝色、黄色、橙色等),然后简单地从列表中选择随机颜色,知道无论如何都是安全的颜色选好了,它们在一起看起来会相当不错吗?

    【讨论】:

    • 我不知道具体的分类数量,它们根据具体的状态而变化,所以我需要更通用的方法。
    【解决方案4】:

    世界上最简单的事情:

    使用 HSV 颜色模型 (http://en.wikipedia.org/wiki/HSL_and_HSV),只需更改其中一个参数 (Hue) 即可获得漂亮的颜色过渡。

    【讨论】:

      【解决方案5】:

      您必须使用网络上的颜色选择器找出一个算法,看看当您以固定数量更改 RGB 值时会发生什么。如果你能找到(例如:将 R 值加 10,如果到达终点,将 G 值加 10 并重置 R 值),你可以为自己动态制作一个列表。

      第二个选项是,当您知道您有一个最终的最大类别时,您可以创建一个列表并使用它。

      【讨论】:

        【解决方案6】:

        我在类似情况下使用的一个技巧是生成三个随机强度值,然后在六种可能的 RGB 组合中使用这三个值来生成具有恒定强度和统一对比度的调色板。

        使用三个强度值 33、88 和 aa 的示例。

        <div style='background-color: #3388aa;'>Color 1</div>
        <div style='background-color: #33aa88;'>Color 2</div>
        <div style='background-color: #aa8833;'>Color 3</div>
        <div style='background-color: #aa3388;'>Color 4</div>
        <div style='background-color: #8833aa;'>Color 5</div>
        <div style='background-color: #88aa33;'>Color 6</div>
        

        【讨论】:

          猜你喜欢
          • 2014-06-12
          • 2014-10-07
          • 2012-08-24
          • 2017-03-29
          • 2015-08-16
          • 2019-10-29
          • 1970-01-01
          • 2015-10-18
          • 2011-03-14
          相关资源
          最近更新 更多