(学术)配色和绘图相关知识、资源和建议

一、色彩(基础知识)

1、两类色彩空间

  • RGB(三色构成任何色) — 屏幕显示
  • CMYK — 印刷

2、最直观的色彩模式 —— HSL

色调(H)、饱和度(S)、亮度(L) ; 色轮上任何颜色均可由HSL构建

  • 色调 :即颜色名
  • 亮度 : 不赘述
  • 饱和度 :鲜艳程度(不要太高,否则会刺眼)

3、16进制颜色代码 :RGB的另一种呈现方式

  • 白色 —— #FFFFFF (255,255,255)

二、配色工具和参考资料

三、配色注意事项

1、突出重点,严禁亮色底+亮色图。

2、善用光感、渐变、透明度

3、保持主题一致,从主要内容(例如徽章等中提取背景色)

4、配色原则:

  • 不刺眼(饱和度不要太高)

  • 亮度可适当调整(饱和度调低后若颜色过于压抑,可略提高亮度)

  • 调整色调 —— 选最舒服的颜色。

四、科研绘图配色

1、整篇论文的所有配图,应当有一个主色调,然后使用近似色(互补色、组合色)作辅助色。尽量使用柔和的颜色(不要选刺眼的纯色)。

2、配色要突出关键信息、展示逻辑关系。

3、一些基础的数据点、线配色和字体建议(主要摘自https://www.bilibili.com/video/BV1J7411G7Uv?spm_id_from=333.999.0.0;视频内容有例子,更详细)

(1)单条数据线(点):

  • 常用红色、黑色;可用深灰蓝、深紫蓝;不适合用绿色橙色等中间颜色。

  • 需要叠加其它彩色信息时,适合用黑色;细密、噪音大的数据适合用深灰色。

  • 灰度图、伪彩色图中的线条、标记适合用较亮的彩色(红黄橙)

  • 多彩色图(底色)中的同类型数据点适合用黑色(可以加轮廓)

  • 多彩色图(底色)中的线可以用和背景色对比强烈的颜色

(2)两条数据线:

  • 黑-红/蓝/绿 常用于主次对比

  • 红蓝对比:用于对等数据对比,常用

  • 互补色对比(蓝-橙;紫红-青绿)

  • 深浅对比(黑-灰;深蓝-浅蓝;深红-浅红;)一般用于表示同一个量不同处理下的变化

  • 饱和度对比(灰-红;灰-蓝)常用于背景数据(灰色)上叠加的拟合线、平滑线

(3)字体:

  • 若期刊无特定要求,建议首选sans serif(无衬线)字体

  • 非必要不加颜色和粗斜

  • 数量-单位/运算符 之间记得空格

4、多看领域内顶级期刊的文章配图和期刊的刊文要求,学习配色方案。

5、从优秀文章中抽取配色是最好的配色/学习方案:此处给出一段提取配色的Python代码:

1.# 该函数用于提取配色
2.# 建议提供PNG或JPEG格式
3.# 支持远程连接
4.import numpy as np
5.import pandas as pd
6.from PIL import Image
7.import matplotlib.pyplot as plt
8.from haishoku.haishoku import Haishoku 
9.%matplotlib inline
10.
11.def get_coloring_scheme(path):
12.    Haishoku_result = Haishoku.loadHaishoku(path)
13.    percentage = []
14.    rgb_255 = []
15.    rgb_1 = []
16.    pd.set_option('max_colwidth', 512) #强制放大单元格宽度
17.    for i in Haishoku_result.palette:
18.        percentage.append(i[0])
19.        rgb_255.append(i[1])
20.        rgb_1.append(tuple(np.array(i[1])/255))
21.
22.    df = pd.DataFrame({'percentage':percentage,'rgb_255':rgb_255,'rgb_1':rgb_1})
23.    print(df.to_string()) #这样展示会美观些,不会换行
24.
25.    color_map = rgb_255
26.    fig, axs = plt.subplots(1, len(color_map), figsize=(20,20))
27.
28.    for i, color in enumerate(color_map):
29.        img = Image.new('RGB', (6, 6), color)
30.        ax = axs[i]
31.        ax.set_title(color)
32.        ax.set_xticks([]) # 去掉轴
33.        ax.set_yticks([])
34.        ax.imshow(img)
35.    plt.show()
36.
37.get_coloring_scheme('./image/example.png')

五、图表选择和绘制

1、图表选择参考

2、考虑特殊人群(主要指色盲人士)

参考: https://www.nature.com/articles/d41586-021-02696-z

红绿色盲(red–green colour blindness)是最常见的色觉辨认障碍;蓝黄色盲(blue–yellow colour blindness)次之,而全色盲(achromatopsia,即无法辨认大多数的颜色)则更罕见。

不当的颜色选择会使数据失真;彩虹颜色方案很可能扭曲数据。
人们分辨红色的能力通常不如其他颜色,因此严重依赖红色的色彩组合会掩盖数据细节。
有些颜色方案难以很好地转化为灰度——当科学家打印黑白版的论文供离线阅读时,这会导致问题。

因此:
为了绘制无阅读障碍的图形,需要:

  • 尽量不使用彩虹颜色方案。多使用感知上统一的颜色方案,如viridis或cividis。

  • 避免使用红色。特别是结合绿色一起使用时。

  • 使用灰色。在灰度中检查图像,或将颜色处理为完全不饱和。

  • 选择人人都适用的调色板,如Color Universal Design或Color Blind 10 Palette,或使用i want hue或Viz Palette创建独家调色板。

  • 思路放宽。使用形状和线条纹理等特征来区分颜色。

  • 提前测试。使用Color Oracle或Coblis等模拟器,以确保每个人都能准确理解图像。

3、基础绘图代码片段集锦

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值