解决 python pytplot绘图 图片长宽无法调整、文件保存为矢量图的问题记录。
这个问题困扰我许久,本身文档提供的控制函数都试过了,文档见下。https://pytplot.readthedocs.io/en/latest/index.html
诸如这些控件调整都是失败的。
wsize [int, int] [height, width], pixel size of the plot window
yaxis_width int The number of pixels wide of the y axis
等等还有其他就不展示了。
后阅读源代码发现其绘图主要还是依靠matplotlib、bokeh这两个包,本质上pytplot就是在matplotlib、bokeh、numpy等包之上的二次开发。
于是我使用了matplotlib、bokeh的图像大小控件,试图控制,但是依旧没有效果。
此后我使用了一个愚蠢的办法,我发现所谓tplot变量,实际上和pandas的dataframe区别不大,而且dataframe比tplot有更多的函数可以进行数据处理且可视化等优点,于是我将读取的tplot变量拆分,重新用pandas进行处理,用matplotlib进行绘图。
本身人家打包是为了更方便使用,但是我给他拆开了等于是。
一顿繁杂的操作,也算是实现了图像大小控制这一最基础的功能。
后来汪老师得知了我的做法,告诉我遇到困难应该先想办法解决困难,实在解决不了在考虑其他途径,我这才一会儿就放弃了,让我在坚持坚持,并且给出了一些在IDL上使用tplot的经验。
虽然经验没用上,但是我打算继续尝试解决这一最简单的问题。
也就是老师说完的次日,我又浏览了源代码,突然发现了一个内容。
# the following are for the matplotlib versionxsize=None,ysize=None,save_eps='', save_svg='', save_pdf='',save_jpeg='',dpi=None,fig=None, axis=None, pseudo_plot_num=None, second_axis_size=0.0,return_plot_objects=False):
面露难色,我似乎发现了一个了不得的东西。
此后我又进入到该源代码的MPLPlotter文件夹下,发现了一致的内容。
于是我感觉问题应该解决了,这顺便还解决了图片无法保存为eps的问题,如下文档里的事例毫无用处。save函数只对png有反馈。
pytplot.tplot(["Variable1", "Variable2", "Variable3"], save_file='C:/temp/pytplot_example.html')
最后给出一个好的例子。
import pyspedas
from pytplot import tplot
import pytplot
omni_vars = pyspedas.omni.data(trange=['2013-11-5', '2013-11-6'])
pytplot.tplot_options('wsize', [5000,2000])#无用的垃圾
tplot(['BX_GSE', 'BY_GSE', 'BZ_GSE', 'flow_speed', 'Vx', 'Vy', 'Vz', 'SYM_H'],save_eps='c:\\Users\\XCL\\Desktop\\test',xsize=10,ysize=10)
效果:
解决 python pytplot绘图 图片长宽无法调整、文件保存为矢量图的问题记录。相关推荐
- python opencv 内存泄露_解决python中显示图片的plt.imshow plt.show()内存泄漏问题
当要处理批量图片,且每张图片都要进行显示时,用plt.imshow() plt.show()会出现内存泄漏, 管理器中看到其中一个python进程的内存不断上涨,目前有找到解决方法 from matp ...
- python画图显示不了中文_完美解决Python matplotlib绘图时汉字显示不正常的问题
Matplotlib是一个很好的作图软件,但是python下默认不支持中文,所以需要做一些修改,方法如下: 1.在python安装目录的Lib目录下创建ch.py文件. 文件中代码为: 保存,以后通过 ...
- python plt.show_解决python中显示图片的plt.imshow plt.show()内存泄漏问题
当要处理批量图片,且每张图片都要进行显示时,用plt.imshow() plt.show()会出现内存泄漏, 管理器中看到其中一个python进程的内存不断上涨,目前有找到解决方法 from matp ...
- python 3d绘图 汉字_完美解决Python matplotlib绘图时汉字显示不正常的问题
Matplotlib是一个很好的作图软件,但是python下默认不支持中文,所以需要做一些修改,方法如下: 1.在python安装目录的Lib目录下创建ch.py文件. 文件中代码为: 保存,以后通过 ...
- 怎么修改图片长宽尺寸?如何用电脑修改照片尺寸?
自媒体编辑工作的小伙伴经常需要修改图片尺寸(https://www.yasuotu.com/size)来应对不同平台的图片尺寸大小要求,那么如何改图片大小呢?接下来本文将带给大家一些关于图片改大小的相 ...
- pdfbox pdf转图片,图片长宽大小与pdf保持一致
需求 需要将pdf转图片,用作预览,图片需要与pdf页的长宽大小保持一致. 依赖 org.apache.pdfbox:pdfbox:2.0.26 分析过程 pdfbox源码中,设置图片长宽大小的方法如 ...
- input文件框选择本地图片后页面预览图片并获取图片长宽以及大小 图片上传前预览
前面有转过一篇通过HTML5来实现图片上传前预览 ,现在借助FileReader也实现了这个需求.并且同时还可以获得图片的长宽相素以及图片文件的大小.demo如下: <html> < ...
- 解决 Python Matplotlib 绘图时不连续x轴自动补全的问题(xsticks)
问题 发现一个奇怪的问题,记录一下: 用 Python Matplotlib绘图的时候,x轴为不连续的日期,但是画出来的图,对于不连续的部分x轴会自动补全,空出来的部分是没有值的.(x轴数据明明是明确 ...
- php图片长宽处理,用php调整图片宽高 | 学步园
/** * 改变图片的宽高 * * @author flynetcn (2009-12-16) * * @param string $img_src 原图片的存放地址或url * @param str ...
最新文章
- 「MICCAI 2016」Reading Note
- YourSQLDba的翻译(十一)
- python画直方图成绩分析-Python数据分析:直方图及子图的绘制
- Opengl-深度测试模板测试
- Careercup - Google面试题 - 5424071030341632
- redis的flushall命令
- Docker搭建Nacos1.3+Seata1.4+MySQL8分布式事务(服务端)
- Linux安装以太坊geth客户端
- Hadoop中的Streaming(20)
- CDH修改PySpark默认的Python版本
- python第二十二课——list函数
- 微星P55-主板是怎样造出来的
- RC延时电路计算方法
- iphone 扩容测试软件,拯救iPhone 12 64G!闪迪打造的扩容神器上手:轻松省钱
- 汽车Bootloader流程
- 计算机运行慢提速小技巧,教你为Win7系统加速的五个技巧
- Descriptive Essay文章内容怎么写?
- 百度 LBS 开放平台,开发人员众測计划正式启动
- IMS QTI 实践指南 | 01 简单题型 Simple Items
- java se 14 虚拟机规范