我需要从随机整数列表(0-255)创建一个十六进制数字字符串.每个十六进制数字应由两个字符表示:5 - "05",16 - "10"等.
例:
Run Code Online (Sandbox Code Playgroud)Input: [0,1,2,3,127,200,255], Output: 000102037fc8ff
我设法提出:
#!/usr/bin/env python
def format_me(nums):
result = ""
for i in nums:
if i <= 9:
result += "0%x" % i
else:
result += "%x" % i
return result
print format_me([0,1,2,3,127,200,255])
Run Code Online (Sandbox Code Playgroud)
但是,这看起来有点尴尬.有更简单的方法吗?
Seaborn可以选择创建漂亮的调色板.我希望使用这些调色板生成颜色,这些颜色可以在地图中很好地协同工作,其中根据某些属性对国家进行着色.以下代码从浅到深产生8种紫色阴影.另请注意,指定颜色数量的能力是必需的,因此我不能只使用定义颜色的固定调色板.
import seaborn as sns
num_shades = 8
sns.palplot(sns.cubehelix_palette(num_shades))
Run Code Online (Sandbox Code Playgroud)
如果我运行相同但在这样的列表中:
color_list = sns.cubehelix_palette(num_shades)
Run Code Online (Sandbox Code Playgroud)
你得到:
[[0.9312692223325372, 0.8201921796082118, 0.7971480974663592], ...
Run Code Online (Sandbox Code Playgroud)
这些显然不是RGB值,这是我需要的.
1)这些颜色是什么格式?2)如何转换为RGB或6位数代码?
我试过很长一段时间没找到答案.我看过这里和其他seaborn文档:
https://stanford.edu/~mwaskom/software/seaborn/generated/seaborn.set_color_codes.html
我可以使用以下方法从RGB转换为6位数代码:
但我被困在如何直接或通过获取RGB值.任何帮助,将不胜感激.
关于这个SO 问题,使用格式化运算符将其应用于numpy数组的最佳方法是什么,其中数组的格式为下面给出的RGB值对应的格式
注意RGB值已经缩放为0到1,因此需要多次255来重新缩放
array([[ 0.40929448, 0.47071505, 0.27701891],
[ 0.59383913, 0.60611158, 0.55329837],
[ 0.4393785 , 0.4276561 , 0.34999225],
[ 0.4159481 , 0.4516056 , 0.3026519 ],
[ 0.54449997, 0.36963636, 0.4001209 ],
[ 0.36970012, 0.3145826 , 0.315974 ]])
Run Code Online (Sandbox Code Playgroud)
并且您想要每行的十六进制三元组值
我想通过节点属性的值为图中的节点着色,并且对于属性的特定值,我想应用渐变。这与我所看到的(许多!)其他响应不同,这些响应旨在为图中所有节点的matplotlibcmap(例如cmap = plt.get_cmap('Greens'))中的节点添加颜色。我想将一种颜色应用于一种类型的节点,并将颜色映射应用于另一种类型的节点。
这是我迄今为止尝试过的。我认为这是失败,因为我想添加一个字符串(如“黄”)和RGBA值(例如cmap(dict_1[node]))来color_map,然后我使用的node_color参数nx.draw()。
import networkx as nx
import matplotlib.pyplot as plt
color_map = []
cmap = plt.get_cmap('Greens')
for node in g:
if node in list_1:
color_map.append('yellow')
elif node in list_2:
rgba = cmap(dict_1[node])
color_map.append(rgba*-1)
nx.draw(g, node_color = color_map, node_size = 75)
Run Code Online (Sandbox Code Playgroud)
color_map当我只按名称向 中添加颜色color_map,而不是在当前表单中时,该方法工作得很好。