python matplotlib 论文画图代码总结

本文总结了在论文中使用Python的matplotlib库绘制柱状图和折线图的经验,包括并列柱状图、普通柱状图、堆叠柱状图的绘制,并详细介绍了如何设置坐标轴刻度、颜色、字体、图例和坐标轴范围,以实现图表的美化和定制。
摘要由CSDN通过智能技术生成

最近赶了一篇论文,其中涉及到很多实验结果的绘制。最开始使用了pandas自带的plot功能,使用简单,但是很多细节都无法自己调节定制,默认的结果又相当的丑。于是参考了csdn上各位大佬的分享,这些分享都对在某一方面的某个问题进行详细介绍,链接如下,在此表示感谢:
Python——使用matplotlib绘制柱状图
python中matplotlib的颜色及线条控制: 配色大全,想找漂亮颜色上这里
【Python Matplotlib】设置x/y坐标轴刻度
python matplotlib 画图刻度、图例等字体、字体大小、刻度密度、线条样式设置
python matplot美化+坐标轴范围设置等笔记
本文希望介绍一些在论文写作过程中实际的例子,看看怎样把上面提到的这些内容最后融合到一起。

柱状图绘制

并列柱状图

把以下数据图形化:

Metrics A B C
a 2.5 2.6 2.7
b 2.75 2.85 2.95

其中A,B,C是要比较的对象,a,b是两个评价指标,这里我们要完成几个操作:

  1. 并列柱状图
  2. 由于数值的差距不大,我们不希望y坐标从0开始,而是从某一大于0的值开始,比如2
import matplotlib.pyplot as plt
figure, ax = plt.subplots()
item = ['A','B','C']
num1 = [0.5, 0.6, 0.7]
num2 = [0.75, 0.85, 0.95] #这里对数据进行了截断,所有值都减去了2,只画从2开始的部分
x =list(range(len(num1))) #横坐标
width = 0.4 #每一根“柱”的宽度
plt.yticks([0, 0.2, 0.4, 0.6, 0.8, 1.0], [2.0, 2.2, 2.4, 2.6, 2.8, 3.0])
#设置y坐标,实际数值是前一组,标记数值为后一组
plt.bar(x, num1, width=width, label='a',fc = '#B0C4DE')#画第一组
for i in range(len(x)):
    x[i] = x[i] + width #横坐标移动
plt.bar(x, num2, width=width, label='b',fc = '#4682B4')#画第二组 
plt.show()

结果如下:
在这里插入图片描述
其中,plt.bar()的 fc=’’ 选项控制颜色,可以在文首链接中自由选择。
接下来,还要进行几项工作:

  1. 设置x轴显示被比较对象名称:
y=[]
for i in range(len(x)):
    y.append(x[i] - width/2)   
ax.set_xticks(y) #令对象名称出现在相邻两"柱"中间位置
ax.set_xticklabels(item)
  1. 设置字体
plt.tick_params(labelsize=16)
labels = ax.get_xticklabels() +
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值