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

本文介绍了如何在Python中使用Matplotlib库创建包含多个子图的图表,包括选择合适的图片格式(如EPS矢量图),设置分辨率,以及如何使用Colorbar展示数据颜色映射。还展示了如何在Scatterplot中添加颜色条,并对相关参数进行详细解释。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1. 推荐图片格式

EPS (矢量图、体积小、质量高)

2. 分辨率

大于 300dpi (也不宜过高,导致文件体积过大)

3. 配色网站

Color Scheme Designer 中文版

Adobe Color

ColorBrewer 2.0

4. subplots

Matplotlib 库中

fig, ax = plt.subplots(nrows, ncols, figsize=(width, height), dpi=dpi, sharex=sharex, sharey=sharey)

其中各参数的含义如下:

- `nrows` 和 `ncols`:表示子图的行数和列数。如果只需要一个子图,可以将它们都设置为1。

- `figsize`:一个包含画布宽度和高度的元组,用于指定画布的尺寸(单位是英寸)。

- `dpi`:用于指定绘图的分辨率(每英寸像素数)。

- `sharex` 和 `sharey`:布尔值,用于指定是否共享x轴和y轴刻度。如果设置为True,子图将共享刻度。

- 返回值 `fig` 和 `ax`:`fig` 是一个画布对象,`ax` 是一个包含子图或子图数组的对象。它可以是一个Axes对象,也可以是Axes对象的二维数组,具体取决于指定的 `nrows` 和 `ncols`。

import matplotlib.pyplot as plt



# 创建一个包含两个子图的画布

fig, axs = plt.subplots(1, 2, figsize=(10, 5), dpi=100)



# 在第一个子图上添加绘图元素

axs[0].plot([1, 2, 3], [4, 5, 6])

axs[0].set_title("Subplot 1")

axs[0].set_xlabel("X Label")

axs[0].set_ylabel("Y Label")



# 在第二个子图上添加绘图元素

axs[1].scatter([1, 2, 3], [7, 8, 9], color='r')

axs[1].set_title("Subplot 2")

axs[1].set_xlabel("X Label")

axs[1].set_ylabel("Y Label")



# 调整子图之间的间距

plt.tight_layout()



# 显示绘图

plt.show()

5. Color bar
	import numpy as np
	import matplotlib.pyplot as plt
	
	# 生成随机数据
	np.random.seed(0)
	Population = np.random.uniform(100, 2500, 50)
	GDP = np.random.uniform(1000, 30000, 50)
	House_price = np.random.uniform(3000, 100000, 50)  # 用于设置颜色的数据
	
	# 设置字体
	plt.rcParams['font.sans-serif'] = 'simsun'
	plt.rcParams['font.size'] = 12
	
	# 创建绘图对象和子图
	fig, ax = plt.subplots()
	
	# 绘制散点图,并设置颜色主题(cmap参数)
	sc = ax.scatter(GDP, Population, c=House_price, cmap='cividis')
	
	# 添加颜色条
	cbar = plt.colorbar(sc)
	cbar.set_label('房价')  # 颜色条标签
	
	# 设置标题和轴标签
	ax.set_title('城市GDP、人口与房价')
	ax.set_xlabel('X GDP')
	ax.set_ylabel('Y 人口')
	
	# 显示图形
	plt.show()

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值