热门标签 | 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去画图。


推荐阅读
  • 1.如何在运行状态查看源代码?查看函数的源代码,我们通常会使用IDE来完成。比如在PyCharm中,你可以Ctrl+鼠标点击进入函数的源代码。那如果没有IDE呢?当我们想使用一个函 ... [详细]
  • Python自动化处理:从Word文档提取内容并生成带水印的PDF
    本文介绍如何利用Python实现从特定网站下载Word文档,去除水印并添加自定义水印,最终将文档转换为PDF格式。该方法适用于批量处理和自动化需求。 ... [详细]
  • 本文探讨了如何在给定整数N的情况下,找到两个不同的整数a和b,使得它们的和最大,并且满足特定的数学条件。 ... [详细]
  • 本文介绍如何使用Python进行文本处理,包括分词和生成词云图。通过整合多个文本文件、去除停用词并生成词云图,展示文本数据的可视化分析方法。 ... [详细]
  • 本文介绍如何使用 Python 获取文件和图片的创建、修改及拍摄日期。通过多种方法,如 PIL 库的 _getexif() 函数和 os 模块的 getmtime() 和 stat() 方法,详细讲解了这些技术的应用场景和注意事项。 ... [详细]
  • 本文详细介绍如何使用Python进行配置文件的读写操作,涵盖常见的配置文件格式(如INI、JSON、TOML和YAML),并提供具体的代码示例。 ... [详细]
  • 技术分享:从动态网站提取站点密钥的解决方案
    本文探讨了如何从动态网站中提取站点密钥,特别是针对验证码(reCAPTCHA)的处理方法。通过结合Selenium和requests库,提供了详细的代码示例和优化建议。 ... [详细]
  • 深入理解Tornado模板系统
    本文详细介绍了Tornado框架中模板系统的使用方法。Tornado自带的轻量级、高效且灵活的模板语言位于tornado.template模块,支持嵌入Python代码片段,帮助开发者快速构建动态网页。 ... [详细]
  • 本文详细介绍了Akka中的BackoffSupervisor机制,探讨其在处理持久化失败和Actor重启时的应用。通过具体示例,展示了如何配置和使用BackoffSupervisor以实现更细粒度的异常处理。 ... [详细]
  • 本文介绍了如何在C#中启动一个应用程序,并通过枚举窗口来获取其主窗口句柄。当使用Process类启动程序时,我们通常只能获得进程的句柄,而主窗口句柄可能为0。因此,我们需要使用API函数和回调机制来准确获取主窗口句柄。 ... [详细]
  • 本文详细解析了Python中的os和sys模块,介绍了它们的功能、常用方法及其在实际编程中的应用。 ... [详细]
  • 本文介绍如何使用 Python 提取和替换 .docx 文件中的图片。.docx 文件本质上是压缩文件,通过解压可以访问其中的图片资源。此外,我们还将探讨使用第三方库 docx 的方法来简化这一过程。 ... [详细]
  • 根据最新发布的《互联网人才趋势报告》,尽管大量IT从业者已转向Python开发,但随着人工智能和大数据领域的迅猛发展,仍存在巨大的人才缺口。本文将详细介绍如何使用Python编写一个简单的爬虫程序,并提供完整的代码示例。 ... [详细]
  • 本文详细介绍了Python中文件的基本操作,包括打开、读取、写入和关闭文件的方法,并通过实例展示了如何将Excel文件转换为CSV文件以及进一步转换为HTML文件。此外,还涉及了成绩等级替换的具体实现。 ... [详细]
  • 本文介绍了如何使用 Python 的 Matplotlib 和 Pandas 库进行数据可视化。通过示例代码展示了折线图、柱状图和水平柱状图的创建方法,并解释了图表参数设置的具体细节。 ... [详细]
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社区 版权所有