python画图:matpolt,设置图片尺寸,字体大小,副坐标轴,保存

文章重心:

  • 写论文的时候,图片的大小,字体的大小,副坐标轴,这些都是很重要的因素,保存一下之前用过的画图代码
  • 单图
  • 多图(两个子图)
  • 堆叠柱状图
  • 两个Y轴的图

问题:

  • python保存的时候,我选择的是svg,但是这样图片会比较大,查重什么的需要把图片都删了(一般有文件大小限制),虽然不影响,但是让人不爽,有博主分享了怎么保存为emf
  • python保存的图,有时候需要裁剪一下,不然边上留白比较多

单图示例

import numpy as np
from matplotlib import pyplot as plt
# 设置显示中文字体
plt.rcParams['font.family'] = ['SimSun', 'Times New Roman']  # 中文为SimSun,英文为Times New Roman
plt.rcParams['mathtext.fontset'] = 'stix'  # 设置数学公式字体为stix
# 设定的图片宽度
width_cm = 12
high_cm = 6
# 设置图的大小,将宽度转换为英寸
fig, ax = plt.subplots(figsize=(width_cm / 2.54, high_cm / 2.54))  # 6是一个示例高度
# 设置全局字体大小
plt.rc('font', size=10.5)
# 关闭自动缩放字体大小的功能
plt.rcParams['font.size'] = 10.5  # 字体大小为10.5磅
plt.rcParams['axes.titlesize'] = 10.5  # 坐标轴标题的字体大小为10.5磅
time_scope = range(24)
# 在主坐标轴上绘制曲线图
plt.plot(time_scope, np.zeros(24), linestyle='--', linewidth=1.5, color='gray')
plt.plot(time_scope, range(24), label='ESS功率', linestyle='-', linewidth=1.5, color='red')
# 设置次坐标轴的y轴标签
plt.xlabel('时间(h)')
plt.ylabel('功率(kW)')
# 添加曲线图的图例
plt.legend(loc='upper left', frameon=False, fancybox=False, shadow=False)
# 设置主坐标轴的刻度
plt.xlim(-0.5, 23.5)
plt.xticks(range(0, 24, 2))
# 启用副刻度线
plt.minorticks_on()
plt.xticks(range(0, 24, 1), minor=True)
plt.yticks([x / 2 for x in range(-0 * 2, 24 * 2, 5)])
# plt.yticks([x / 2 for x in range(-0 * 2, 25 * 2 + 1, 2)], minor=True)
# 调整 Matplotlib 的显示设置,紧凑
plt.tight_layout()
plt.savefig( '图片.svg', dpi=500)
plt.show()

结果如图所示:
在这里插入图片描述

多图示例

两个子图,但是实际上画一个图就够了,在word里面再排版会更好:

import numpy as np
from matplotlib import pyplot as plt
from matplotlib.gridspec import GridSpec

# 设置显示中文字体
plt.rcParams['font.family'] = ['SimSun', 'Times New Roman']  # 中文为SimSun,英文为Times New Roman
plt.rcParams['matht

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/645515.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

网页出现为了更好的体验,请将手机竖过来

前言 网站:https://act.xinyue.qq.com/commercial/act/af93dc75d9fc541d4833f05e98a9f54b6pre/index.html 发现必须要手机端才可以,否则显示"为了更好的体验,请将手机竖过来"的提示信息 很好奇怎么做的,UA?发现更改UA后依旧显示,后面看代码就知道了 可以看到是通过…

单片机原理及技术(二)—— AT89S51单片机(一)(C51编程)

目录 一、AT89S51单片机的片内硬件结构 二、AT89S51的引脚功能 2.1 电源及时钟引脚 2.2 控制引脚 2.3 并行 I/O口引脚 三、AT89S51的CPU 3.1 运算器 3.1.1 算术逻辑单元(ALU) 3.1.2 累加器A 3.1.3 程序状态字寄存器(PSW&#xff09…

【狂神说Java】Redis笔记以及拓展

一、Redis 入门 Redis为什么单线程还这么快? 误区1:高性能的服务器一定是多线程的? 误区2:多线程(CPU上下文会切换!)一定比单线程效率高! 核心:Redis是将所有的数据放在内…

数据结构 —— 栈 与 队列

1.栈 1.1栈的结构和概念 栈(Stack)是一种特殊的线性数据结构,它遵循后进先出(LIFO,Last In First Out)的原则。栈只允许在一端插入和删除数据,这一端被称为栈顶(top)&a…

第一节:Redis的数据类型和基本操作

最近整理了关于Redis的一些文档,分享给大家,后续会持续更新...... Redis的数据类型 字符串String String:字符串,可以存储String、Integer、Float型的数据,甚至是二进制数据,一个字符串最大容量是512M 列表…

Linux指令初识

ls:显示当前目录底下的指定文件或目录 ls -l更详细的信息 ls -a显示当前目录下的所有文件 命令中的选项可以一次传递多个 ,例如:ls -al 命令和选项有必须一个或多个空格 以.开头的文件,为隐藏文件ls -a可以看到,ls -l看不见 支持命令拼在一起&#…

【vue2配置】Vue Router

Vue Router官网 1、npm install vue-router4 2、创建模块,在src目录小创/views/map/MapIndex.vue模块和创router/index.js文件 3、在router/index.js配置路由 import Vue from "vue"; import Router from "vue-router"; // 引入模块 const Ma…

C++学习/复习5--构造函数与初始化/static成员/友元/内部类/匿名对象/编译器的拷贝构造优化

一、本章概要 二、再谈构造函数 1.构造体赋初值与初始化 2.初始化列表与初始化 2.1定义 2.2注意事项与举例 3.explicit关键字与构造函数 3.1隐式类型转换 也叫做自动类型转换 这种转换通常是从存储范围小的类型到存储范围大的类型,或者是从低精度的数值类型到高…

【编译原理--- 汇编、编译、解释系统】

汇编、编译、解释系统 1.编译方式和解释方式 程序种类是否生成目标程序是否参与程序的运行过程程序执行速度可移植性编译程序生成不参与快差解释程序不生成参与慢好 编译方式过程:词法分析、语法分析、语义分析、(中间代码生成、代码优化、&#xff0…

【动手学强化学习】第 6 章 Dyna-Q 算法知识点总结

【动手学强化学习】第 6 章 Dyna-Q 算法知识点总结 本章知识点基于模型的强化学习与无模型的强化学习方法简介无模型的强化学习方法基于模型的强化学习方法 强化学习算法的评价指标Dyna-Q算法Dyna-Q 算法的具体流程Dyna-Q 代码实践 本章知识点 基于模型的强化学习与无模型的强…

opencv进阶 ——(四)图像处理之去高光

去高光步骤: 1、转换成灰度图 2、二值化图像,得到高光区域 3、进行膨胀操作,放大高光区域,以此得到高光蒙版 4、通过illuminationChange函数对高光区域消除高光

VMware安装Ubuntu系统(超详细)

一.Ubuntu官网下载镜像 Ubuntu官网:Enterprise Open Source and Linux | Ubuntu 二.安装Ubuntu系统 选择文件->创建虚拟机新建虚拟机(ControlN),这里直接选择典型即可 选择稍后安装系统 选择linux Ubuntu 64位 填写虚拟机名称…

word一按空格就换行怎么办?word文本之间添加空格就换行怎么办?

如上图,无法在Connection和con之间添加空格,一按空格就会自动换行。 第一步:选中文本,打开段落。 第二步:点击中文版式,勾选允许西文在单词中间换行。 确定之后就解决一按空格就自动换行啦!

基于STM32实现智能水族箱控制系统

目录 引言环境准备智能水族箱控制系统基础代码示例:实现智能水族箱控制系统 水温传感器数据读取水泵与加热器控制水位传感器数据读取用户界面与显示应用场景:水族箱管理与环境控制问题解决方案与优化收尾与总结 1. 引言 本教程将详细介绍如何在STM32嵌…

steam游戏服务器如何选择

steam游戏平台现在在国内市场很吃香,当我们自己开发的游戏想要上架steam我们需要准备什么,在选择服务器的时候我们又需要考虑哪些因素呢,该怎样选择一款适合自己游戏的服务器是很关键的 一.Steam服务器的配置选择 Steam专用服务器通常是指由…

【wiki知识库】01.wiki知识库前后端项目搭建(SpringBoot+Vue3)

📝个人主页:哈__ 期待您的关注 🌼环境准备 想要搭建自己的wiki知识库,要提前搭建好自己的开发环境,后端我使用的是SpringBoot,前端使用的是Vue3,采用前后端分离的技术实现。同时使用了Mysql数…

Spring Boot 3.0:未来企业应用开发的基石

文章目录 一、Spring Boot 3.0的核心特性二、Spring Boot 3.0的优势三、如何在项目中应用Spring Boot 3.01.更新项目依赖2.调整代码结构3.测试和部署 《学习Spring Boot 3.0》内容简介作者简介目录内容介绍 随着技术的飞速发展,企业应用开发的需求也在不断演变。Spr…

创客贴:极简高效的智能平面设计神器测评

给大家推荐一款智能平面设计作图软件——创客贴,简单来说,就是给那些需要频繁进行平面设计的人提供帮助的。它作为一款在线图片编辑器,可以免费使用,让你轻松进行创意设计。创客贴不仅提供了海量正版设计模板和图片素材&#xff0…

AI 谈“浔川AI翻译机”

在天工AI,天工AI在全网搜索“浔川AI翻译机”。 1 创作助手谈“浔川AI翻译机”: “浔川AI翻译机”是一个利用人工智能技术进行语言翻译的设备或应用程序。它可以将一种语言的文字或口语翻译成另一种语言,以实现不同语言之间的沟通和理解。浔…

小猪APP分发:一站式免费应用推广解决方案

在竞争激烈的移动应用市场中,寻找一个高效且成本友好的方式来推广自己的应用程序,成为了众多开发者面临的共同挑战。幸运的是,像"小猪APP分发www.appzhu.cn"这样的平台应运而生,为开发者提供了一个全面、免费的应用分发…