matplotlib为文本使用rgba颜色

时间:2019-07-10 00:02:26

标签: matplotlib text

我想添加一个带有rgba颜色的文本,但是matplotlib拒绝它,这是我最小的工作示例

import matplotlib.pyplot as plt
fig, ax = plt.subplots()
ax.text(0.5,0.5,'wololo', color=np.array([[1,1,1,1]]))
plt.show()

它会产生错误

TypeError: unhashble type: 'numpy.narray'

以某种方式,它可以使用字符串定义的颜色(请参见以下示例),但是我希望它可以使用任何RGBA格式

import matplotlib.pyplot as plt
fig, ax = plt.subplots()
ax.text(0.5,0.5,'wololo', color='r')
plt.show()

我该如何实现?

1 个答案:

答案 0 :(得分:2)

问题在于您提供的数组是2D数组。但是RGBA颜色应该是一维数组或列表。您可以使用

cols = c("values") # columns to be sum

df %>% bind_rows(
  df %>% 
    filter(category %in% c('a' , 'b')) %>%
    group_by(file) %>% 
    mutate_at(vars(cols), sum) %>% 
    mutate(category = paste0(category,collapse='')) %>% 
    filter(row_number() == 1 & n() > 1)
) %>% mutate(ID = row_number())

color=np.array([1,1,1,1])            # Use 1D array