科研论文配图的绘制与配色基础

科研论文配图主要成分

主要包括 X 轴( X axis ,又称横轴)、 Y 轴( Y axis ,又称纵轴)、 X 轴标签( X axis label)、 Y 轴标签( Y axis label )、主刻度( Major tick )、次刻度( Minor tick )和图例( Legend)等,如下图标示。

 科研配图的尺寸和格式

像素图:

像素图(位图)是以单个像素为单位,通过对像素进行组合和排列,来显示图片格式。像素图在放大到一定程度后,会失真,变得模糊。常见的像素图格式包括 JPEG 、 PSD 、 PNG 、 TIFF ,其中, JEPG 是一种常用的有损压缩图片格式,处理起来较容易,但像素分辨率低、清晰度差、色彩损失大。

矢量图:

矢量图是使用点、直线或多边形等基于数学方程的几何图元表示的图像。矢量图的图像文件包含独
立的分离图像,可以自由、无限制地进行重新组合,其特点是放大后图像不会失真,也就是说,与分辨率无关。常见的矢量图格式包括 EPS 、 PDF 、 AI 、 SVG ,其中, EPS 格式的图片文件小、显示质量高、色彩保真度高,印刷时的字样较为清晰,是常用的论文配图格式;AI 格式是一种可以二次修改的图片格式,也是常用的插图格式,其体积较大,包含图片各图层的所有信息。

科研论文配图的字体字号设置

注意科技期刊的规定;一些中文科技期刊将科研论文配图中的文本对象(横、纵坐标的标签,以及图例文本)的字体设置为宋体或黑体,英文科技期刊大多使用 Arial、Helvetica 或 Times New Roman 字体;在单篇论文中所有插图的字体字号要尽量保持一致。

科研论文配图的版式设计、结构布局和颜色搭配

文字的字体要保持一致

字号不大于正文字体的字号,行距、文字间距,应与正文协调一致

 “先文后图”

不同尺寸的配图不要安排在同一列或同一行

避免使用过亮或过暗的颜色

相邻的图层元素不宜采用相近的颜色

对于彩色图,我们要使用原图,慎用灰度图表示。

绘制原则

1、必要性原则

要考虑在科研论文的应用场景中(如结构表达等)是否需要配图?也要避免出现文字较少、图表较多的情况。

2、易读性原则

方便读者理解,使用完整准确的标题标签和图例。

3、一致性原则

配图所表达出的内容与上下文或者指定内容描述一致 
配图数据与上下文保持一致 
插图比例尺和缩放比例大小保持一致 
类似配图各图层要素保持一致 

色彩模式

RGB色彩模式

 CMYK色彩模式

HEX色彩模式

 Tips:

可通过 ColorPixFastStone 等屏幕取色工具直接获取颜色码或者通过 Encycolorpedia 等网站直接搜索不同颜色对应的 HEX 颜色码。

 

色轮配色原理

color wheel, 一般由12种基本颜色按照圆环方式排列组成,三原色、三间色和六个次级色

#利用turtle绘制色轮
import turtle

colors = ['#FF0000','#FF4433','#FFA500','#FFAA33',
          '#FFFF00','#8dcc01','#008000','#088F8F',
          '#0000FF','#3b43c0','#800080','#953553']

def draw_color_wheel(colors, radius, center=(0, 0)):
    slice_angle = 360 / len(colors)
    heading, position = 90, (center[0] + radius, center[1])
    for color in colors:
        turtle.color(color, color)
        turtle.penup()
        turtle.goto(position)
        turtle.setheading(heading)
        turtle.pendown()
        turtle.begin_fill()
        turtle.circle(radius, extent=slice_angle)
        heading, position = turtle.heading(), turtle.position()
        turtle.penup()
        turtle.goto(center)
        turtle.end_fill()

draw_color_wheel(colors, 150, center=(25, 50))
turtle.hideturtle()
print('done - press any key to exit')
turtle.onkeypress(exit)
turtle.listen()
turtle.done()

 基于色轮,配色方案有以下几种:

 

1、单色配色方案

使用色相相近的一组颜色进行组合;这种配色方案的饱和度和明暗度层次明显,使用时只需考虑同一色相下饱和度和明暗度的变化。

常被用于表示有直接关系、关系较为密切或者同系列的数据。

 2、互补色配色方案

色轮上间隔180°的两种颜色为互补色。具有强烈的对比效果。可用于观察组数据和对照组数据的可视化表达。

 3、等距三角配色方案

色轮上间隔120°的三种颜色进行组合。会使配图颜色更鲜艳,但是论文中应用较少。使用时可以将一种颜色选为主色,另外两种选为辅色。

 4、四色配色方案

有两种方案,如下图实线表示的两对互补色组成的方案,还有虚线表示的方形配色方案。优点是使配图色彩更鲜艳,缺点是容易造成色彩杂乱。所以,在科研论文中应尽量避免使用四角配色方案。

 颜色主题

Matplotlib 库的颜色主题主要包括 3 种类型:单色系( sequential )、双色渐变色( diverging )和多色系( qualitative )。

单色系

色相基本相同,饱和度单调递增,主要维度是亮度,在白色或浅色背景上绘制的配图,较低的数值对应较亮的颜色,较高的数值对应较暗的颜色,而在深色背景中,则会出现相反的情况,即更亮的颜色用更高的数值表示。

次要维度是色调,即较暖的颜色出现在较亮的一端,较冷的颜色则会出现在较暗的一端。

#渐变红色色条
import matplotlib.pyplot as plt
import numpy as np

num_colors = 10  # 色条的颜色数量
lightness_values = np.linspace(0.2, 0.8, num_colors)  # 不同明亮度的取值范围

# 创建红色单色系的颜色
colors = [(l, 0, 0) for l in lightness_values]  # 使用RGB颜色表示,只变化R通道

# 创建色条图像
fig, ax = plt.subplots(figsize=(8, 1))
colormap = plt.matplotlib.colors.ListedColormap(colors)
cbar = plt.colorbar(plt.cm.ScalarMappable(cmap=colormap), cax=ax, orientation='horizontal')

# 设置色条标签
cbar.set_ticks([])  # 去除刻度
cbar.set_label('red', size=14)

# 显示图像
plt.show()

 

双色系

主要用在有一个关键中心值( midpoint )的数值变量中,其本质是两个连续单色系的组合,把关键的中心值作为中间点,一般使用白色表示,大于中心值的分配给中间点一侧的颜色,而小于中心值的分配给中间点另一侧的颜色。此外,我们可以通过颜色的深浅进行判断,即中心值通常被指定为浅色,距中心点越远,颜色越深。

 

#红蓝双色渐变系色条
import matplotlib.pyplot as plt
import numpy as np

num_colors = 10  # 色条的颜色数量

# 创建红色到蓝色之间的双色渐变
colors = plt.cm.RdBu(np.linspace(0, 1, num_colors))

# 创建色条图像
fig, ax = plt.subplots(figsize=(8, 1))
colormap = plt.matplotlib.colors.ListedColormap(colors)
cbar = plt.colorbar(plt.cm.ScalarMappable(cmap=colormap), cax=ax, orientation='horizontal')

# 设置色条标签
cbar.set_ticks([])  # 去除刻度
cbar.set_label('red_to_blue_bar', size=14)

# 显示图像
plt.show()

 多色系
当所表示的数据为类别型数值(类别变量)时,我们可以使用多色系颜色主题。在多色系
颜色主题的使用过程中,需要给每个组分配不同的颜色。一般情况下,可尝试将颜色主题中的
颜色类别设置为 10 种或更少,而使用过多的颜色类别,可能造成分组混乱,导致杂乱的视觉
效果。
#多色系色条
import matplotlib.pyplot as plt
import numpy as np

num_colors = 12  # 色条的颜色数量

# 创建多个颜色
colors = plt.cm.tab20(np.linspace(0, 1, num_colors))

# 创建色条图像
fig, ax = plt.subplots(figsize=(8, 1))
colormap = plt.matplotlib.colors.ListedColormap(colors)
cbar = plt.colorbar(plt.cm.ScalarMappable(cmap=colormap), cax=ax, orientation='horizontal')

# 设置色条标签
cbar.set_ticks([])  # 去除刻度
cbar.set_label('Qualitative_color_bar', size=14)

# 显示图像
plt.show()

配色工具

Color Scheme Designer

 Paletton - The Color Scheme Designer

 Adobe Color

https://color.adobe.com/zh/create/color-wheel

 Color Brewer 2.0

ColorBrewer: Color Advice for Maps (colorbrewer2.org)

 

  • 3
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值