失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > python渐变色代码_python生成渐变色

python渐变色代码_python生成渐变色

时间:2024-05-12 14:52:34

相关推荐

python渐变色代码_python生成渐变色

使用RGB颜色,两种颜色间设置一定的步长,就能生成想要的渐变色

import seaborn as sns

import matplotlib.pyplot as plt

# RGB格式颜色转换为16进制颜色格式

def RGB_to_Hex(rgb):

RGB = rgb.split(',') # 将RGB格式划分开来

color = '#'

for i in RGB:

num = int(i)

# 将R、G、B分别转化为16进制拼接转换并大写 hex() 函数用于将10进制整数转换成16进制,以字符串形式表示

color += str(hex(num))[-2:].replace('x', '0').upper()

print(color)

return color

# RGB格式颜色转换为16进制颜色格式

def RGB_list_to_Hex(RGB):

# RGB = rgb.split(',') # 将RGB格式划分开来

color = '#'

for i in RGB:

num = int(i)

# 将R、G、B分别转化为16进制拼接转换并大写 hex() 函数用于将10进制整数转换成16进制,以字符串形式表示

color += str(hex(num))[-2:].replace('x', '0').upper()

print(color)

return color

# 16进制颜色格式颜色转换为RGB格式

def Hex_to_RGB(hex):

r = int(hex[1:3], 16)

g = int(hex[3:5], 16)

b = int(hex[5:7], 16)

rgb = str(r) + ',' + str(g) + ',' + str(b)

print(rgb)

return rgb, [r, g, b]

# 生成渐变色

def gradient_color(color_list, color_sum=700):

color_center_count = len(color_list)

# if color_center_count == 2:

# color_center_count = 1

color_sub_count = int(color_sum / (color_center_count - 1))

color_index_start = 0

color_map = []

for color_index_end in range(1, color_center_count):

color_rgb_start = Hex_to_RGB(color_list[color_index_start])[1]

color_rgb_end = Hex_to_RGB(color_list[color_index_end])[1]

r_step = (color_rgb_end[0] - color_rgb_start[0]) / color_sub_count

g_step = (color_rgb_end[1] - color_rgb_start[1]) / color_sub_count

b_step = (color_rgb_end[2] - color_rgb_start[2]) / color_sub_count

# 生成中间渐变色

now_color = color_rgb_start

color_map.append(RGB_list_to_Hex(now_color))

for color_index in range(1, color_sub_count):

now_color = [now_color[0] + r_step, now_color[1] + g_step, now_color[2] + b_step]

color_map.append(RGB_list_to_Hex(now_color))

color_index_start = color_index_end

return color_map

if __name__ == '__main__':

# input_colors = ["#40FAFF", "#00EBEB", "#00EB00", "#FFC800", "#FC9600", "#FA0000", "#C800FA", "#FF64FF"]

input_colors = ["#00e400", "#ffff00", "#ff7e00", "#ff0000", "#99004c", "#7e0023"]

colors = gradient_color(input_colors)

sns.palplot(colors)

print(len(colors))

plt.show()

文章来源: ,作者:可达鸭Go,版权归原作者所有,如需转载,请联系作者。

原文链接:/xiaohuai4869/blog/3104848

如果觉得《python渐变色代码_python生成渐变色》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。