基于值返回颜色名称的优雅方法

马里奥·雷耶斯(Mario Reyes)

是否有更好的方法让函数根据传递给它的值输出颜色名称?更优雅的替代if else下面算法。

同样,理想情况下,颜色将来自标准颜色图,而不必在if else语句中手动编写每个颜色名称

谢谢,

def color_from_value(val):
    if val <= 1:
        return 'red'
    elif val < 2:
        return 'blue'
    elif val < 3:
        return 'green'
    .
    .
    .
    else:
        return 'black'
jtlz2

您可以使用一个简单的列表,该列表可用于迭代matplotlib / pyplot行。(但是,这不涉及您的范围/限制。)例如:

colors = ['red','blue','green','black']
i=0
chosen_color = colors[i] # red

例如,您可以将其设为lambda以便处理默认情况(从https://stackoverflow.com/a/2574659/1021819借用):

color_from_value = lambda i: colors[i] if i < len(colors) else 'black'

assert(color_from_value(0) == 'red')

对于matplotlib,假设要绘制两个不同的数据集:

import numpy as np
import matplotlib.pyplot as plt
colors = ['r','b','g','k']
x = np.linspace(0.0,1.0,11)
y = [2.0*x,x**2 + 1.0]
labels = ['linear','quadratic']

然后:

for i in range(2):
    plt.plot(x,y[i],color=colors[i],label=labels[i])
_=plt.legend()
plt.show()

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

返回基于布尔值的数字序列的更优雅的方法?

来自分类Dev

基于返回值而不是退出代码构造流水线的优雅方法?

来自分类Dev

基于输入标志返回不同变量的优雅方法

来自分类Dev

在iOS中是否可以基于RGB值获得颜色名称?

来自分类Dev

基于值的颜色填充?

来自分类Dev

基于值的颜色单元

来自分类Dev

从C ++ / C ++ 11中的函数返回不同值类型的优雅方法

来自分类Dev

基于文本值的颜色单元

来自分类Dev

如何基于Java中的if-else条件为从结果集返回的列值添加颜色

来自分类Dev

基于python中的字典值返回键的快速方法

来自分类Dev

避免多个布尔值的优雅方法?

来自分类Dev

基于日期的返回值

来自分类Dev

如何优雅地忽略Python函数的某些返回值?

来自分类Dev

python list comprehension返回基于字母的名称

来自分类Dev

基于值的颜色matplotlib条形图

来自分类Dev

每个轴基于值的多种颜色

来自分类Dev

WPF Datagrid基于值的行颜色

来自分类Dev

基于离散值的阴影颜色(更改“亮度”)

来自分类Dev

基于值的R个颜色散点图

来自分类Dev

基于值的R个颜色散点图

来自分类Dev

基于字段值的备用行颜色

来自分类Dev

基于列值的颜色表行

来自分类Dev

基于日期值的SSRS背景颜色表示

来自分类Dev

Android颜色渐变基于值的变化

来自分类Dev

基于截止值的 geom_point 颜色

来自分类Dev

Tableau:基于背景颜色的轴值

来自分类Dev

返回值列名称

来自分类Dev

PostgreSQL函数返回的值的名称

来自分类Dev

根据值返回字典名称