论文绘图工具讲解

一、matplotlib

1、基础版

基础入门版不加任何参数的修改,生成的柱状统计图示例。

以下是一个用matplotlib绘制柱状图的示例。 

import matplotlib.pyplot as plt

# 定义数据
year = ['2019', '2020', '2021']
sales = [200, 300, 400]

# 创建图表并设置标题
plt.figure()
plt.title('Sales by Year')

# 绘制柱状图
plt.bar(year, sales)

# 设置横纵坐标标签
plt.xlabel('Year')
plt.ylabel('Sales')

# 显示图表
plt.show()

这段代码将生成一个以年份为横坐标,销售额为纵坐标的柱状图,并展示在屏幕上。

8e08d0f48ef2452aa25f5686840e3c8a.png

2、进阶版

介绍绘图相关的参数修改。

pyplot使用总结

plt参数介绍1

plt参数介绍2

csdn系列讲解plot函数

matplotlib.legend()函数用法解析

颜色选择:

dbf8e26622104d85a2e9be9277409388.png

柱状图

柱状图(bar():基础参数、外观参数)

以下这段代码创建一个条状图,用于展示不同比赛中的总分以及对应的男性和女性的分数。

import matplotlib.pyplot as plt #导入matplotlib
labels=['G1', 'G2', 'G3', 'G4', 'G5'] #获取绘图所用数据,用list方式 
men_means = [20, 35, 30, 35, 27]
women_means = [25, 32, 34, 20, 25]
men_std = [2, 3, 4, 1, 2]
women_std = [3, 5, 2, 3, 3]
width = 0.35
#the width of the bars: can also be len(x) sequence
fig, ax = plt.subplots()
#subplot()表示分成几个图来画,可以设置参数。
#fig表示图示,ax表示对应各种参数
ax.bar(labels, men_means, width, yerr=men_std, label='Men')
ax.bar(labels, women_means, width, yerr=women_std, bottom=men_means, label='Women')
#bar绘制条状图的函数
ax.set_ylabel('Scores')#设定纵坐标的名称
ax.set_xlabel('Game')#设定纵坐标的名称
#可以尝试加入xlabel 改变标签名称 改变bar的宽度、颜色等等
ax.set_title('Scores by group and gender')#设定标题
ax.legend()#设定标签
# plt.savefig('E:/test1.png')#保存图像到指定位置,指定格式
plt.show()#显示

30396386b9324f6faeb415031458749b.png

折线图

折线图demo1

折线图demo2

折线图demo3

此程序将生成一个简单的折线图。 x轴显示1到5,y轴显示2到10,每个数据点由一个蓝色的点表示,这些点通过一条蓝线连接。 此图还包括标签和标题。

import matplotlib.pyplot as plt

# 定义x和y的值
x = [1, 2, 3, 4, 5]
y = [2, 4, 6, 8, 10]

# 创建画布和子图对象
fig, ax = plt.subplots()

# 绘制折线图
ax.plot(x, y)

# 设置图形属性
ax.set_xlabel('X Label')
ax.set_ylabel('Y Label')
ax.set_title('Line Plot')

# 显示图形
plt.show()

以下例子绘制了一个具有多个数据集的折线图,并具有各种自定义设置:

import matplotlib.pyplot as plt
import numpy as np

# 数据集
x = np.linspace(0, 10, 100)
y1 = np.sin(x)
y2 = np.cos(x)
y3 = np.tan(x)

# 绘图
plt.plot(x, y1, label='sin', color='red', linestyle='--', linewidth=2)
plt.plot(x, y2, label='cos', color='blue', linestyle='-.', linewidth=2)
plt.plot(x, y3, label='tan', color='green', linestyle='-', linewidth=2)

# 图表标题和轴标签
plt.title("Trigonometric Functions")
plt.xlabel("x-axis")
plt.ylabel("y-axis")

# 图例
plt.legend(['sin', 'cos', 'tan'])

# 网格
plt.grid(True)

plt.show()

在这个例子中,我们使用NumPy生成三个数据集y1、y2和y3,每个数据集都使用不同的线条样式和颜色绘制。我们还添加了一个图例,以区分每个数据集。此外,我们还打开了网格以增强可读性。

折线图demo2

代码解读

from mpl_toolkits.axes_grid1 import host_subplot 
from mpl_toolkits import axisartist 
import matplotlib.pyplot as plt
#创建主要的坐标轴和辅助坐标轴,并做好相应的设置
host = host_subplot(111, axes_class=axisartist.Axes) # 创建主坐标轴 
plt.subplots_adjust(right=0.75) # 将图形向左平移
par1 = host.twinx() # 创建第一个辅助坐标轴 
par2 = host.twinx() # 创建第二个辅助坐标轴
par2.axis["right"] = par2.new_fixed_axis(loc="right", offset=(60, 0)) # 将第二个辅助坐标轴右移60个单位
par1.axis["right"].toggle(all=True) # 在第一个辅助坐标轴上显示右侧刻度 
par2.axis["right"].toggle(all=True) # 在第二个辅助坐标轴上显示右侧刻度
#绘制各自的折线图,并设置一些图形属性
p1, = host.plot([0, 1, 2], [0, 1, 2], label="Density") # 在主坐标轴上画第一条折线 
p2, = par1.plot([0, 1, 2], [0, 3, 2], label="Temperature") # 在第一个辅助坐标轴上画第二条折线 
p3, = par2.plot([0, 1, 2], [50, 30, 15], label="Velocity") # 在第二个辅助坐标轴上画第三条折线
host.set(xlim=(0, 2), ylim=(0, 2), xlabel="Distance", ylabel="Density") # 设置主坐标轴的范围和标签 
par1.set(ylim=(0, 4), ylabel="Temperature") # 设置第一个辅助坐标轴的范围和标签 
par2.set(ylim=(1, 65), ylabel="Velocity") # 设置第二个辅助坐标轴的范围和标签
host.legend() # 显示图例
#设置各自的坐标轴标签颜色
host.axis["left"].label.set_color(p1.get_color()) # 设置主坐标轴的标签颜色 
par1.axis["right"].label.set_color(p2.get_color()) # 设置第一个辅助坐标轴的标签颜色 
par2.axis["right"].label.set_color(p3.get_color()) # 设置第二个辅助坐标轴的标签颜色
plt.show() # 将绘制好的图形显示出来

折线图示例:

from mpl_toolkits.axes_grid1 import host_subplot
from mpl_toolkits import axisartist
import matplotlib.pyplot as plt

host = host_subplot(111, axes_class=axisartist.Axes)
plt.subplots_adjust(right=0.75)

p1, = host.plot([0, 0.15, 0.45, 0.65, 0.85], [0, 1, 2, 3, 4], 'o-', label="Density",  linewidth=3, color='darkred')
p2, = host.plot([0, 0.15, 0.45, 0.65, 0.85], [0.5, 3, 2, 1, 2.5], 'o-', label="Temperature",  linewidth=3, color='cornflowerblue')
p3, = host.plot([0, 0.15, 0.45, 0.65, 0.85], [0.3, 2.4, 1.7, 2, 0.8], 'o-', label="Velocity",  linewidth=3, color='orange')

font = {'family' : 'Times New Roman',
'weight' : 'normal',
'size'   : 100,
        }

host.set(xlim=(0.1, 0.9), ylim=(0, 4), xlabel="Distance", ylabel="Delay")
plt.xlabel('Distance',font)
plt.ylabel('Delay',font)

host.legend(fontsize='medium')

plt.grid(True)
plt.show()

3、matplotlib官网绘图示例

dbc73ce0b26c4c938a784d0adacdfd65.png

网站地址

4、图像保存格式

86176f2812a541e88084e5e955e77e94.png

在word上保存图像时最好选择性粘贴为windows元文件格式;

插入1*2表格粘贴图像,居中,在表格第二行可以备注上图像名称,最后把表格的边框和底纹设置成无即可;

示意图的位置尽量在新一页的顶天位置放置。

二、visio

使用技巧:

  1. 取消箭头吸附

三、伪代码块(Latex及XeLatex等)

示例使用

仿真平台Overleaf

https://pgn09a51gx.feishu.cn/docx/Xhr9dF5k7ozUVOxqAeDcfJdQnaf#GSGydeY4UooKMSxWGUgcYKt2n3e

https://pgn09a51gx.feishu.cn/docx/Xhr9dF5k7ozUVOxqAeDcfJdQnaf#FUkOdIAO4oo6SSx0CTQcBkQxnYg

https://pgn09a51gx.feishu.cn/docx/Xhr9dF5k7ozUVOxqAeDcfJdQnaf#E28idWgO8oo8gexAdp4che4Sn0f

四、好用的格式转化器

csdn文章链接

在线文档文件转换器

I love PDF

五、文献阅读

小绿鲸

知云

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值