热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

python论文画图模板

python论文画图模板此模板为根据2022年美赛时画图经验整理出来的模板。python虽然有很多可视化的包,但个人认为matplotlib功能时比较多比较全的。

python论文画图模板

此模板为根据2022年美赛时画图经验整理出来的模板。
python虽然有很多可视化的包,但个人认为matplotlib功能时比较多比较全的。


初始化配置

这里要说的是那个画图导出的png、jpg等图片文件的话是由一个可以改图片的像素和分辨率的这个还是要稍微调大点,但如果你使用那个svg格式的图片话,图像像素是不会有明显改变的。(这里做了一下测验调大dpi值时,svg图片文件的大小没有变化。)
然后颜色盘中选了一些个人认为画图好看的颜色。

import numpy as np
import matplotlib.pyplot as plt
plt.rcParams['savefig.dpi'] = 500 #图片像素
plt.rcParams['figure.dpi'] = 500 #分辨率
# Arial Helvetica TIMES NEW ROMAN #如果要显示中文字体,则在此处设为:SimHei
plt.rcParams['font.sans-serif']=['Arial']
plt.rcParams['axes.unicode_minus']=False #显示负号
import pandas as pd
import matplotlib.colors as mcolors
# color pallette 颜色盘
b1,color1,color2,color3,color4,color5 = '#636efa','#c8141c','dodgerblue', '#8714d0', 'green', 'orangered'

框图设置

画图的话有去多基础的设置是可以配置的,这里可以提供我的设置:


单图

### 绘制人口普查数据图 2000-2020年
# Arizona、California、Colorado、New Mexico、Wyomingplt.figure(figsize=(10,5))
#plt.grid(linestyle = "--") #设置背景网格线为虚线
ax = plt.gca()
ax.spines['top'].set_visible(False) #去掉上边框
ax.spines['right'].set_visible(False) #去掉右边框
# ax.tick_params(axis=u'both', which=u'both',length=0) # 去掉刻度线
plt.plot(df_ep['Year'],df_ep['EP_AZ'],label='Arizona',linewidth=2,color=color1)
plt.plot(df_ep['Year'],df_ep['EP_CA'],label='California',linewidth=2,color=color2)
plt.plot(df_ep['Year'],df_ep['EP_CO'],label='Colorado',linewidth=2,color=color3)
plt.plot(df_ep['Year'],df_ep['EP_NM'],label='New Mexico',linewidth=2,color=color4)
plt.plot(df_ep['Year'],df_ep['EP_WY'],label='Wyoming',linewidth=2,color=color5)plt.legend() #显示各曲线的图例
plt.legend(loc=0, numpoints=1)
leg = plt.gca().get_legend()
ltext = leg.get_texts()
plt.xticks(fontsize=12,fontweight='bold') #默认字体大小为10
plt.yticks(fontsize=12,fontweight='bold')
plt.setp(ltext, fontsize=12,fontweight='bold') #设置图例字体的大小和粗细
plt.xlabel("Year",fontsize=13,fontweight='bold')
plt.ylabel("Electricity price",fontsize=13,fontweight='bold')
plt.tight_layout()
# plt.xlim(3,21) #设置x轴的范围
# plt.ylim(0.5,1)
plt.show()
plt.savefig('pic_1'.png',format='png')

在这里插入图片描述


组合图

plt.figure(figsize=(14,5))
plt.subplot(1,2,1)
#plt.grid(visible=True,axis="y",linestyle = "--") #设置背景网格线为虚线
ax = plt.gca()
ax.spines['top'].set_visible(False) #去掉上边框
ax.spines['right'].set_visible(False) #去掉右边框
ax.tick_params(axis=u'both', which=u'both',length=0) # 去掉刻度线plt.bar([x-0.3 for x in range(len(df_wa['STATE']))],df_wa['IR-CUsFr'], width=0.1,color='green',label="Irrigation")
plt.bar([x-0.2 for x in range(len(df_wa['STATE']))],df_wa['PS-Wtotl'] ,width=0.1,color='orange',label="Public Supply")
plt.bar([x-0.1 for x in range(len(df_wa['STATE']))],df_wa['AQ-Wtotl'], width=0.1,color='dodgerblue',label="Aquaculture")
plt.bar([x for x in range(len(df_wa['STATE']))],df_wa['IN-Wtotl'], width=0.1,color='deeppink',label="Industrial")
plt.bar([x+0.1 for x in range(len(df_wa['STATE']))],df_wa['LI-WFrTo'], width=0.1,color='purple',label="Livestock")
plt.bar([x+0.2 for x in range(len(df_wa['STATE']))],df_wa['MI-Wtotl'], width=0.1,color='brown',label="Mining")
plt.bar([x+0.3 for x in range(len(df_wa['STATE']))],df_wa['PT-CUTot'], width=0.1,color='red',label="Thermoelectric")plt.legend()#显示各曲线的图例
plt.legend(loc=0, numpoints=1)
leg = plt.gca().get_legend()
ltext = leg.get_texts()
plt.setp(ltext, fontsize=12,fontweight='bold') #设置图例字体的大小和粗细
plt.xticks([x for x in range(len(df_wa['STATE']))],df_wa['STATE'],size=13,fontweight='bold')
plt.yticks([2000,4000,6000,8000,10000,12000,14000,16000],['2K','4K','6K','8K','10K','12K','14K','16K'],size=13,fontweight='bold')
plt.xlabel("STATE",fontsize=13,fontweight='bold')
plt.ylabel("WATER CONSUMPTION (Mgal/d)",fontsize=13,fontweight='bold')
plt.tight_layout()plt.subplot(1,2,2)
#plt.grid(visible=True,axis="y",linestyle = "--") #设置背景网格线为虚线
ax = plt.gca()
ax.spines['top'].set_visible(False) #去掉上边框
ax.spines['right'].set_visible(False) #去掉右边框
ax.tick_params(axis=u'both', which=u'both',length=0) # 去掉刻度线plt.bar([x-0.3 for x in range(len(df_wa['STATE']))],df_wa['Agricultural'] ,width=0.3, color=b1,label="Agricultural")
plt.bar([x for x in range(len(df_wa['STATE']))],df_wa['Residential'], width=0.3, color=color4,label="Residential")
plt.bar([x+0.3 for x in range(len(df_wa['STATE']))],df_wa['Industrial'], width=0.3, color=color5,label="Industrial")
# plt.bar([i for i in range(len(df_wa['STATE']))],agricultural, alpha=0.5, width=0.5, color='r',label="1")
# plt.bar([i for i in range(len(df_wa['STATE']))],industrial, alpha=0.5, width=0.5, color='b',label="2")
# plt.bar([i for i in range(len(df_wa['STATE']))],residential, alpha=0.5, width=0.5, color='g',label="3")plt.legend()#显示各曲线的图例
plt.legend(loc=0, numpoints=1)
leg = plt.gca().get_legend()
ltext = leg.get_texts()
plt.setp(ltext, fontsize=12,fontweight='bold') #设置图例字体的大小和粗细
plt.xticks([x for x in range(len(df_wa['STATE']))],df_wa['STATE'],size=13,fontweight='bold')
plt.yticks([2000,4000,6000,8000,10000,12000,14000,16000],['2K','4K','6K','8K','10K','12K','14K','16K'],size=13,fontweight='bold')
plt.xlabel("STATE",fontsize=13,fontweight='bold')
plt.ylabel("WATER CONSUMPTION (Mgal/d)",fontsize=13,fontweight='bold')
plt.tight_layout()
save_pic(1)
show_pic()

在这里插入图片描述
还有一些其他的图,例如雷达图,各种热力图,这些都是可以用这个模板的,这样你画出来的图片会比较清晰和好看。
这里再附上一个雷达图,其他图也没有怎么画了。
在这里插入图片描述


其他

画图的话当然还是可以用一些软件什么的了,然后比较好的像origin专业画图的,但是这个需要专门去学习之后才能将图画的更好看一些,本人也只是要用的时候可以找一些资料画一些图,但也没有啥经验,以后的话可能会使用的更多一点。如果是话那种示意图的话,可以用viso还有PPT,个人最熟悉的还是PPT了,日常使用PPT去画图。


推荐阅读
  • 目录预备知识导包构建数据集神经网络结构训练测试精度可视化计算模型精度损失可视化输出网络结构信息训练神经网络定义参数载入数据载入神经网络结构、损失及优化训练及测试损失、精度可视化qu ... [详细]
  • JComponentJLabel的setBorder前言用例2205262241前言setBorder(Border边框)实现自JComponentjava.awt.Insets ... [详细]
  • 如何将Python与Excel高效结合:常用操作技巧解析
    本文深入探讨了如何将Python与Excel高效结合,涵盖了一系列实用的操作技巧。文章内容详尽,步骤清晰,注重细节处理,旨在帮助读者掌握Python与Excel之间的无缝对接方法,提升数据处理效率。 ... [详细]
  • 本文介绍了一种自定义的Android圆形进度条视图,支持在进度条上显示数字,并在圆心位置展示文字内容。通过自定义绘图和组件组合的方式实现,详细展示了自定义View的开发流程和关键技术点。示例代码和效果展示将在文章末尾提供。 ... [详细]
  • 使用 ListView 浏览安卓系统中的回收站文件 ... [详细]
  • 在Java项目中,当两个文件进行互相调用时出现了函数错误。具体问题出现在 `MainFrame.java` 文件中,该文件位于 `cn.javass.bookmgr` 包下,并且导入了 `java.awt.BorderLayout` 和 `java.awt.Event` 等相关类。为了确保项目的正常运行,请求提供专业的解决方案,以解决函数调用中的错误。建议从类路径、依赖关系和方法签名等方面入手,进行全面排查和调试。 ... [详细]
  • 一个建表一个执行crud操作建表代码importandroid.content.Context;importandroid.database.sqlite.SQLiteDat ... [详细]
  • 如果应用程序经常播放密集、急促而又短暂的音效(如游戏音效)那么使用MediaPlayer显得有些不太适合了。因为MediaPlayer存在如下缺点:1)延时时间较长,且资源占用率高 ... [详细]
  • Ihavetwomethodsofgeneratingmdistinctrandomnumbersintherange[0..n-1]我有两种方法在范围[0.n-1]中生 ... [详细]
  • 本文对比了杜甫《喜晴》的两种英文翻译版本:a. Pleased with Sunny Weather 和 b. Rejoicing in Clearing Weather。a 版由 alexcwlin 翻译并经 Adam Lam 编辑,b 版则由哈佛大学的宇文所安教授 (Prof. Stephen Owen) 翻译。 ... [详细]
  • 本文详细介绍了MySQL数据库的基础语法与核心操作,涵盖从基础概念到具体应用的多个方面。首先,文章从基础知识入手,逐步深入到创建和修改数据表的操作。接着,详细讲解了如何进行数据的插入、更新与删除。在查询部分,不仅介绍了DISTINCT和LIMIT的使用方法,还探讨了排序、过滤和通配符的应用。此外,文章还涵盖了计算字段以及多种函数的使用,包括文本处理、日期和时间处理及数值处理等。通过这些内容,读者可以全面掌握MySQL数据库的核心操作技巧。 ... [详细]
  • Python 序列图分割与可视化编程入门教程
    本文介绍了如何使用 Python 进行序列图的快速分割与可视化。通过一个实际案例,详细展示了从需求分析到代码实现的全过程。具体包括如何读取序列图数据、应用分割算法以及利用可视化库生成直观的图表,帮助非编程背景的用户也能轻松上手。 ... [详细]
  • 在对WordPress Duplicator插件0.4.4版本的安全评估中,发现其存在跨站脚本(XSS)攻击漏洞。此漏洞可能被利用进行恶意操作,建议用户及时更新至最新版本以确保系统安全。测试方法仅限于安全研究和教学目的,使用时需自行承担风险。漏洞编号:HTB23162。 ... [详细]
  • 利用 Python 中的 Altair 库实现数据抖动的水平剥离分析 ... [详细]
  • 本项目在Java Maven框架下,利用POI库实现了Excel数据的高效导入与导出功能。通过优化数据处理流程,提升了数据操作的性能和稳定性。项目已发布至GitHub,当前最新版本为0.0.5。该项目不仅适用于小型应用,也可扩展用于大型企业级系统,提供了灵活的数据管理解决方案。GitHub地址:https://github.com/83945105/holygrail,Maven坐标:`com.github.83945105:holygrail:0.0.5`。 ... [详细]
author-avatar
klolo先生
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有