自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(31)
  • 收藏
  • 关注

原创 Pyaudio音频流播放单频声和白噪声(含程序)

1.背景在一些声学测量测试中,经常会用到单频声和白噪声,比如测量单个频率是否失真、测量整个频带下的频响等等。测试过程中不可能经常携带白噪声和大量不同频率的单频声文件。此时拥有一个能够直接播放单频声和白噪声的小软件就显得非常实用了。本文基于Pyaudio设计了一个单频声和白噪声的播放器,通过简单的设置即可播放指定频率的单频声,而无需在本地存取音频文件。Pyaudio还可以实现音频录制、音频文件写入、音频文件读取等功能,若有需要可以参考官方文档小程序的设计参考了 Single frequency wave

2021-09-26 16:00:57 1590

原创 SCI文献下载神器

1.简介调用某-hub网站的资源,基于pyqt5实现了论文下载程序的设计。通过网络爬虫获取网站的结果,并将其另存为PDF文件,并打开下载好的PDF。使用时,优先使用DOI号或DIO地址进行搜索,成功率更高,URL和标题搜索的成功率次之。本代码仅包含一个可用网址(可能随时失效),且只实现了单个文件的下载。需要通过网站实时更新可用网址或者有批量下载需求的可以联系我。仅做编程交流,资源均来源于网络,如有侵权,联系删除。2. 界面操作简单的操作指引如下:3.主要代码#

2021-09-18 10:45:56 553

原创 MATLAB 提取fig文件中数据的通用方法

背景介绍在很久之前使用MATLAB画的图,只剩下.fig格式的图像文件,绘图的源代码找不到了,或者需要进行大量的计算才能得到相关的结果,这个时候掌握一种从MATLAB中获取绘图数据的方法就显得非常重要了。从fig文件中获取数据(通用方法)首先打开XX.fig文件,在MATLAB中显示绘图,例如下图中的正弦:运行如下MATLAB代码:obj = get(gca,'children')得到当前图像的对象(有多图的时候注意将目标图放在最前),结果如下:>>>obj =

2021-09-12 15:58:10 7160 1

原创 一键拨号联网小软件

一键"拨号联网"小软件相对与之前的程序 https://blog.csdn.net/txh3093/article/details/107784464 进行了如下的更新。将整个程序构建成一个对象,结构更加清晰,对象同包含了不同的方法。避免了多次输入密码出错无法处理的情况,新的程序密码输错可以一直重试,本地文件只保存正确的联网结果。在首次联网时需要输入账号和密码,一旦联网成功则保存二进制账号密码到与exe文件相同路径下的“联网账号.pkl”文件中。一旦本地创建了具有正确账号密码的文件,双击联网

2021-09-09 20:45:53 252

原创 PyQt5 GUI 接收UDP数据并动态绘图(多线程间信号传递)

这里写自定义目录标题1. Qt 安装2. Pycharm 设置2.1 Pyqt5 和 pyinstaller 包2.2Pycharm pyqt工具配置3 PyQt5 图形界面设计4 Pyinstaller 打包成exe1. Qt 安装2. Pycharm 设置你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Markdown编辑器, 可以仔细阅读这篇文章,了解一下Markdown的基本语法知识。2.1 Pyqt5 和 pyinstaller 包2.2Pychar

2021-09-06 21:30:16 3958 6

原创 Pycharm设置终端自动进入当前python环境

这里写自定义目录标题设置Pycharm中的Powershell终端powershell初始化设置Pycharm中的Powershell终端使用系统自带powershell的请忽略此步。在设置–工具–终端中设置默认powershell的路径,并勾选 激活virtualenv 选项。powershell初始化完成上述设置后,可以从pycharm底部进入终端,默认情况下打开终端是不会进入右侧对应的Clean_Py37环境,通过conda activate 进入环境也不会出现前缀。需要进行如下操作

2021-09-02 16:27:22 6596 1

原创 如何使用pycharm进行Window-Windows的远程调试

目前可以查到大量通过Windows pycharm客户端远程调用Linux服务器上的pycharm解释器,进行远程调试的案例。但对于服务器上装的是Windows系统的情况,是否也能够实现远程调试呢?答案很明确:在pycharm中进行Windows-Windows远程调试还未开发出来(现在的时间是2021.03.19),请大家暂时不要浪费时间了。具体讨论见官方论坛:https://youtrack.jetbrains.com/issue/PY-19129#comment=27-1469350...

2021-03-19 13:25:08 1296 4

原创 完美解决 matplotlib 对数上标负号乱码的问题

1.问题描述在matplotlib中显示中文标题时会出现乱码的问题,关于中文字体的调整见https://blog.csdn.net/txh3093/article/details/106858041但上述操作后仍然会在绘制对数图像时,对数刻度上标为负时的负号会出现乱码。本文将给出解决该问题的永久方案。2.解决方法最近发现有大佬在其他论坛中给出了解决方案,但讲述的有一点复杂,在此直接给出解决方案。通过everything软件搜索mathtext.py,一般在site-packages文

2021-01-12 10:26:46 2847 7

原创 Python 将一维数组计算函数拓展到二维矩阵可用

现有的很多函数库中所带的函数都只能进行一维数组的计算,对于大量一维数组构成的二维数据只能通过循环进行迭代计算,在进行少量计算时,还能勉强使用,但一旦需要计算的量比较多时,每个量都需要进行循环计算,显得非常累赘。对于只有一个输入数据,其他输入均为参数的函数 ,例如:a,b,c...=f(x,para1,para2,para3,...),可使用如下拓展函数Cal_by_coloumns将其拓展为可以进行二维计算的形式,由于使用的exec内置函数可以实现动态调用变量名,因此输出变量的个数不限。具体用法是:

2020-11-14 17:45:13 1041

原创 Python numpy中的一维数组和矩阵之间的点乘和矩阵乘法计算

在numpy中,一维数组是一个很奇葩的存在,在数组与矩阵计算时,很容易产生混淆,到底数组在矩阵计算时是行向量还是列向量?经过测试,本文预先给出如下结论:1.数组点乘矩阵时,将数组看做是行向量,按行依次与矩阵最内层方括号的内容(最后一个维度)点乘。2.数组左乘矩阵时,将数组作为行向量。3.数组右乘矩阵时将数组作为列向量。4.注意: 按照上述规则,遇到长度不同时,将报错1.数组与数组和矩阵之间的点乘数组之间维度相同时,可以任意进行点乘和点除计算,其他的计算如,sqrt、power、l.

2020-09-30 17:11:06 8645 2

原创 一文弄清 Python 中 list 和 array 中的维度问题

在迭代计算中经常需要以list的形式append新的行或列矢量数据进来,而在后续计算时有需要将list转换为二维array矩阵进行计算,list转array会多出一个维度,令人困扰,现进行一些案例,弄清相关的维度问题。(对于从MATLAB转过来的同学们,这应该是N多的坑之一)1.维度和方括号的关系重新强调一下基础,在list 和 array中可以将每一层方括号看做一个维度,有多少层方括号就有多少维。a=np.array([1,2,3]) # 一维 阶次为3 (3,)a=np.array...

2020-09-27 18:21:59 3853

原创 基于pyqt5 构建弹窗进度条,在大型计算中实时显示进度

在大型计算时(例如神经网络训练),经常会遇到计算时间过长,无法知道当前的计算进度,无法判断程序是否进入死循环等问题。采用进度条可以在一定程度上,了解当前进度,判断后续所需的计算时间,缓解等待过程中的焦虑。在计算进程中可以放心地去干其他事情。 常规的方法是使用打印字符的形式展示当前的进度,但这一类进度条很容易被淹没在其他需要显示的内容中。且对于多个显示进度的子任务,需要从打印历史中人工查看子任务在总的任务中的进度。使用起来比较繁琐。 ...

2020-09-13 15:44:46 13498 10

原创 gitee的基本使用

1.安装git 得到git bashGit客户端下载地址:官方Git后期图形界面管理推荐使用TortoiseGit2.本地建立仓库初始化:进入bash:需要同步的本地文件夹→右键→git bash→进入命令行 (免cd 操作)git init # 初始化git status # 查询当前状态首次从本地建立并需要上传时需建立如下文件:touch README.md # 添加README.md文件:添加文件跟踪:touch gitignore...

2020-09-02 10:49:32 492

原创 Pycharm 解决 Backend TkAgg is interactive backend. Turning interactive mode on.提示

Pycharm中使用pyqt5作为绘图后台时,会提示Backend TkAgg is interactive backend. Turning interactive mode on.,该提示对绘图没有影响,可以忽略,强迫症请继续往下看:消除提示的方法如下:在pycharm的设置中找到如下位置,将红色框中的选项选中,后续就不会再出现上述提示。其他博文不知所云,东扯西拉最终也没有说出怎么消除相关提示,万事还是要自己多动脑筋。...

2020-08-22 12:38:38 51402 6

原创 电脑开机自动登录,断网自动重连以及桌面联网小程序

对于需要拨号连接联网的公司企业和学校,每次开机都需要点一下弹出的连接对话框,才能让电脑联网,无需用户进行任何操作就能自动联网呢?可以使用系统自带的任务计划功能,开机自动拨号,还能设置断网自动重连。1.任务计划程序库选择“我的电脑”→右键打开“管理”→系统工具→任务计划→任务计划程序2.进行联网设置在操作中新建操作,内容如下图右侧所示,在添加参数中输入:你拨号的名称(一般是宽带连接有的后面可能带了数字)+拨号的账号+拨号的密码,三者之间使用空格隔开。完成后点确定,一个联网任务就生成了.

2020-08-04 14:12:12 2619 1

原创 Pycharm+Anaconda 之jupyter notebook内核配置,解决内核不匹配等错误

首先确保已经安装了annaconda和pycharm软件,可百度相关教程。1.安装notebook在独立anaconda环境中,假设环境名为Jupyter,安装notebook,已安装的见下一步。(Jupyter) E:\Pywork> conda install notebook # 或 pip install notebook2.检查ipython是否安装默认安装jupyter notebook包时会安装关联的ipython包,为确保此处无问题,可以检查一下,在Jupyter

2020-07-29 23:51:06 5836 4

原创 Python中Matplotlib 绘图 marker的类型标示方法-备忘

官方链接:https://matplotlib.org/api/markers_api.html,为便于查询,具体内容进行了截图,如下:

2020-07-27 11:12:10 3516

原创 判断python局部变量是否存在,解决local variable ‘a‘ referenced before assignment问题

在一些项目中我们默认一定存在的量,偶尔会出现不存在的情况,例如,峰值位置的提取,默认是存在的,但极少情况下不存在,后续引用峰值位置变量时,会出现 local variable 'x' referenced before assignment 的错误提示。可以使用如下语句判断变量是否存在,再根据具体情况调整后续的算法。A = np.arange(12).reshape(-1,1)print(A)# 给出位置坐标,idx存在,idx2不存在idx = np.random.rando...

2020-07-24 15:05:19 1004

原创 福利!论文直用,python+matplotlib 图片格式一键调整方法!

利用python matplotlib进行绘图时,经常苦恼于无法一键对图片格式进行调整以满足常见期刊论文图片格式要求。通常会要求300dpi,半栏宽度为7cm,跨栏宽度为14cm,线条能看清,字体略小于正文字体,X轴刻度为整数...等等经过摸索,通过函数一键进行上述设置的方法来了!!在matplotlib.pyplot中,有一个名为 rcParams 的参数,该参数可以完成几乎所有你想进行的图片格式预设置。废话不多说,直接上代码,rcParams 能进行设置的参数可通过如下代码进行查看:...

2020-07-10 11:09:41 4289 2

原创 Sublime中设置Latex自定义命令一次完成参考文献生成

在Sublime中运行Latex时,常常会遇到需要运行2次才能使参考文献的引用显示正常,先给出sublime text3 中自定义LatexTools命令一次性完成参考文献的生成。1.安装LatexTools在sublime text中点击 Tools→Commond palette 或快捷键ctrl+shift+p进入命令面板,输入PCI,选择第一个Package Control:Install Package,输入LatexTools,选择后自动安装2.LatexTools设置.

2020-07-08 20:41:45 593

原创 Latex 中的算法流程介绍,含中文和矩阵公式段落整体居中内部左对齐

使用Latex撰写论文时,对算法计算流程进行介绍的部分,一般需要一段文字加公式整体居中,这段文字内部需要左对齐,其中还可能涉及矩阵,特别复杂!!!1.方法介绍经过测试,可通过公式插入文字的方式实现相关功能:(1)对于无编号公式可通过\[ Latex代码段 \]进行编写(2)代码段中的公式部分跟正常公式一样,中文部分可用\text{中文内容}实现(3)公式本身是自动居中的,左对齐可通过实现\begin{aligned}&\text{中文描述}\\&公式\e

2020-07-07 12:10:57 6021

原创 解决AIP LaTeX 模板bib报错,You haven`t defined the language english yet

在外文投稿时,LaTeX在排版上具有很好的便利性。在使用ASA模板写小论文时出现了You haven't defined the language en yet.You haven't defined the language english yet.以及类似的涉及其他语言的提示,很大原因是bib文件中出现了 language={english} 这一条,引起了语言设置相关package的冲突。解决办法就是,删除所有bib文件中的 language={} 条目,问题迎刃而解。删除该条对参考文献的

2020-06-27 11:31:41 1691

原创 如何将自己的python package打包成可以在其他电脑上安装的whl文件(超全面)

1.python中package包的建立关于package包的建立参考本人的另一篇Blog。2.package包打包成可离线安装的whl文件在已有package包的情况下,对现有package进行打包,可参考如下链接,也可以参考本人后续的相关介绍:主要有如下两个关键2.1 setup.py的位置新建一个名为setup.py 的文件,将其放在package包(含有__init__.py的文件夹)的同一级目录。2.2setup.py的内容需要特别注意的是,当需要的填写的模块有多个时.

2020-06-24 17:33:24 3114

原创 永久解决python matplotlib 中文字体的显示乱码-Windows系统

在python中使用matplotlib绘图时,新手通常会遇到中文字体无法显示或显示乱码的问题,这是因为matplotlib中默认没有中文字体的原因,windows系统下的永久解决方法如下:1.首先要确定当前使用的python运行环境 如果没有使用虚拟环境,matplotlib的安装位置,通常在安装目录下C:\ProgramData\Anaconda3,具体可右键点击anaconda或python快捷图标打开当前文件的位置,自动进入该目录。 如果使用的虚拟环境则需要到相应...

2020-06-19 16:25:17 2236 2

原创 pandas 将两个相同表头的表合并并保留行列标题

对于两个表头相同的数据,其合并方法如下,通过pd.merge函数对指定的表头变量进行连接,此外该方法可通过控制left_indexh和right_index参数决定是否保留列标题(或index)。更详细的比较有待后续更新。。。import pandas as pddf1 = pd.DataFrame({'A': ['A0', 'A1', 'A1'], 'B': ['B0', 'B1', 'B2']}, index=['K

2020-06-05 12:05:40 6557

原创 matplotlib中的imshow()绘图长宽比例失调,调整长宽比(备忘)

当两个坐标轴的维度相差较大的时候,采用plt.imshow(x) 会出现如下情况。import matplotlib.pyplot as pltplt.imshow(x,cmap='hot') #绘图plt.colorbar() # 显示颜色标尺plt.show() 解决的办法是:plt.imshow(x,aspect='auto')import matplotlib.pyplot as pltplt.imshow(x,cmap='hot',aspect='auto') #绘

2020-05-28 12:08:59 14216 3

原创 matplotlib 中子图subplot 绘图时标题重叠解决办法(备忘)

matplotlib 中subplot子图绘图时容易出现标题重叠的情况。任意两个信号分别在2*1的子图矩阵中绘图。subplot(211)代表:矩阵维度为(2,1),现在按顺序绘制第一个图,当最后一位为2时,则绘制第二个图。典型代码如下:import numpy as npimport matplotlib.pyplot as pltTs = 0.0002 t = Ts * np.array(range(80000)).reshape(-1, 1) # 采样时间序列 x = np

2020-05-28 11:57:44 19778 2

原创 快速傅里叶变换np.fft.fft的使用

np.fft.fft进行快速傅里叶变换,需要特别注意的是,默认是对最后个维度的数据进行fft变换,若你输入的是一维数组,请忽略后面,如果你是二维列矢量,如果不将数据变为行矢量或将axis参数设为0,将得到与输入相同的结果,导致后续的计算无缘无故出错。二话不说,直接上代码,产生一个正弦信号,并对其进行fft变换,对应的频率点可通过np.fft.fftfreq计算得到,需要输入的两个参数分别是FFT的长度和采样时间间隔。需要注意的是fft计算出来的幅度一般与真实的是不一样的,在ifft中会考虑这个因素,

2020-05-27 18:02:00 33655 20

原创 建立自己的package包,直接导入自建py模块

举一个简单的例子进行说明。首先建立如下的文件结构, test2020 文件夹下包含有test2020.py(或其他任意你的自建py文件)。将test2020文件夹的上一级目录添加到系统环境变量path中。在 test2020文件夹下建立"__init__.py" 文件,里面可以为空,用于说明这个文件夹是一个python 的package包。为简便起见,test2020.py的内容如下(当然也可以是任何自建的函数等):# filename:test2020.pyprint("\nf...

2020-05-27 10:44:48 1662

原创 如何在tf.keras.layers中添加Dropout层

在tf.keras高级API中添加Dropout层的方式与早期的Tensorflow+keras的方式有所不同。典型的案例如下:dropout_model = tf.keras.Sequential([ tf.keras.layers.Dense(512, activation='elu', input_shape=(FEATURES,)), tf.keras.layers.Dropout(0.5), tf.keras.layers.Dense(512, activation=

2020-05-12 10:44:44 10860

原创 python 对array进行元素提取、范围切片及不连续多点切片

import numpy as npa=np.array(range(10)).reshape(-1,1)print(a) # 打印出a#>>> a = [[0 1 2 3 4 5 6 7 8 9]]print(a[-1,0]) # 打印最后一个数,方法1>>> a[-1,0] = 9print(a[-1,-1]) # 打印最后一个数,方法2>>> a[-1,-1] = 9print(a[:6,0]) # 打印范围时,不包括(:.

2020-05-11 17:54:26 68036

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除