PtQt5及Matplotlib学习经验汇总(一)

目录

文章目录

    • 目录
      • 一、Matplotlib鼠标事件的响应及简单参数
      • 二、PyQt5的窗体最大化、还原等
      • 三、PyQt5通过代码删除布局中的控件
      • 四、PyQt5的MessageBox的消息提示框
      • 五、右键菜单
      • 六、Matplotlib绘制坐标轴线
      • 七、python中matplotlib实现随鼠标滑动自动标注
      • 八、将NumPy数组转换为Python列表
      • 九、打开、保存文件、目录浏览的弹出框(QFileDialog)
      • 十、关闭Qdialog
      • 十一、理解Python的self参数
      • 十二、PyQt5不同窗口之间的值传递
      • 十三、python如何返回排序列表的索引
      • 十四、Matplotlib的lines和line2D
      • 十五、python中的list和array的不同之处
      • 十六、pyqtgraph绘图库
      • 十七、Matplotlib绘图刷新功能的可能方法?
      • 十八、Py之sip:Python库之sip的简介、安装、使用方法之详细攻略
      • 十九、python极客项目编程
      • 二十、python中plot实现即时数据动态显示方法
      • 二十一、 matplotlib、python绘图的一些方法

一、Matplotlib鼠标事件的响应及简单参数

  • 参考文档:
    (1)https://www.jianshu.com/p/cf205a759470
    (2)https://blog.csdn.net/guofei9987/article/details/78106492
  • 举例说明:
    def button_press_callback(self, event):
        # 左键被点击
        if event.button == 1:
           pass
        # 右键被点击
        if event.button == 3:
  			pass
        # 鼠标中键被点击
        if event.button == 2:
            pass
  • 参数介绍:https://blog.csdn.net/tcy23456/article/details/84777736
(1)event.xdata,event.ydata:表示鼠标点击的坐标值(画布上的坐标)
(2)event.x,event.y:表示鼠标点击的像素值
(3)event.button等于不同数值,表示不同的点击,执行不同的函数

二、PyQt5的窗体最大化、还原等

  • 参考文档:
    (1)禁止最大化显示:https://blog.csdn.net/iwilldoitx/article/details/78063006
    (2)最大化、最小化涉及的函数:http://blog.sina.com.cn/s/blog_6483fa330102xlhd.html
  • 举例说明:
myshow = MainWindow()
myshow.show() # 显示初始化大小,可通过设置,初始化打开即最大化展示
  • 参数介绍:无

三、PyQt5通过代码删除布局中的控件

  • 参考文档:(1)https://blog.csdn.net/qq_38161040/article/details/88930147
  • 涉及函数:removeWidget(控件)、sip.delete(控件)
  • 注意事项:布局自带的removeWidget(控件),删除不干净;需要安装sip库,执行delete才能删除干净。

四、PyQt5的MessageBox的消息提示框

  • 参考文档:
    (1)http://www.hjwblog.com/2018/04/24/qt/qt5信息提示框QMessageBox用法/
    (2)https://www.cnblogs.com/jmlovepython/p/5723383.html
    (3)https://www.jianshu.com/p/264942d7383a
  • 举例说明:self、窗口标题、提示信息,按钮情况
QMessageBox.information(self, r'警告', r'X方向坐标超调,请切换方向!',
                                        QMessageBox.Ok | QMessageBox.Close, QMessageBox.Close)

五、右键菜单

  • 参考文档:
    (1)https://www.jianshu.com/p/8bd822ab5fa4
    (2)https://blog.csdn.net/jiuzuidongpo/article/details/46507403
  • 举例说明:
self.setContextMenuPolicy(QtCore.Qt.CustomContextMenu)
self.customContextMenuRequested.connect(self.showContextMenu)
  • 参数介绍:五

六、Matplotlib绘制坐标轴线

  • 参考文档:
    (1)https://blog.csdn.net/akadiao/article/details/79761790
  • 举例说明:
self.ax.scatter(event.xdata, event.ydata)
plt.plot([event.xdata, event.xdata], [event.ydata, self.y_axis[0]])
plt.plot([event.xdata, self.x_axis[0]], [event.ydata, event.ydata])
self.fig.canvas.draw()
# self.p_view_hide()
self.current_point_x.setValue(float(event.xdata))
self.current_point_y.setValue(float(event.ydata))
  • 参数介绍:无

七、python中matplotlib实现随鼠标滑动自动标注

  • 参考文档:(1)https://blog.csdn.net/qq_38778838/article/details/89040722
  • 举例说明:无
  • 参数介绍:无

八、将NumPy数组转换为Python列表

  • 参考文档:(1)https://blog.csdn.net/zhubao124/article/details/80719306
  • 举例说明:array.tolist()
  • 参数介绍:无

九、打开、保存文件、目录浏览的弹出框(QFileDialog)

  • 参考文档:
    (1)https://www.cnblogs.com/walnuttree/p/10603260.html
    (2)https://www.cnblogs.com/LifeoFHanLiu/p/9978425.html
    (3)https://blog.csdn.net/xqf1528399071/article/details/52623201
    (4)https://www.cnblogs.com/gaigaige/p/7883603.html
  • 举例说明:
保存
    def data_output(self):
        try:
            filepath, filetype = QFileDialog.getSaveFileName(self, R'创建并保存文件', R'/home/jm/输入文件名',
                                                             R'Excel Files(*.xls *.xlsx);;Word Files(*.doc);;CSV Files(*.csv)')
            f_excel = xlwt.Workbook()
            # sheet_0的内容
            sheet_0 = f_excel.add_sheet("sheet_0",cell_overwrite_ok=True)
            x_array, y_array = self.interpolate()
            x_list = x_array.tolist()
            y_list = y_array.tolist()
            x_list.insert(0,"X轴坐标值")
            y_list.insert(0, "Y轴坐标值")
            for i in range(len(x_list)):
                sheet_0.write(i,0,x_list[i])
            for j in range(len(y_list)):
                sheet_0.write(j,1,y_list[j])
            # sheet_1的内容
            sheet_1 = f_excel.add_sheet("sheet_1", cell_overwrite_ok=True)
            x_list_1,y_list_1 = self.output_mainpoint(x_list,y_list)
            x_list_1.insert(0, "X轴坐标值")
            y_list_1.insert(0, "Y轴坐标值")
            for i in range(len(x_list_1)):
                sheet_1.write(i, 0, x_list_1[i])
            for j in range(len(y_list_1)):
                sheet_1.write(j, 1, y_list_1[j])
            f_excel.save(filepath)
        except:
            pass
  • 参数介绍:无

十、关闭Qdialog

  • 参考文档:
  • (1)https://blog.csdn.net/yatusiter/article/details/8926444
  • 举例说明:
self.close()
  • 参数介绍:无

十一、理解Python的self参数

  • 参考文档:
    (1)https://blog.csdn.net/weixin_42716620/article/details/82888572
  • 举例说明:无
  • 参数介绍:无

十二、PyQt5不同窗口之间的值传递

  • 参考文档:
    (1)https://blog.csdn.net/weixin_34037173/article/details/88175920
    (2)https://blog.csdn.net/qq78442761/article/details/79805252
    (3)https://blog.csdn.net/qq_39315153/article/details/88241517
  • 举例说明:无
  • 参数介绍:无

十三、python如何返回排序列表的索引

  • 参考文档:(1)https://cloud.tencent.com/developer/ask/33280
  • 举例说明:这个很重要
  • 参数介绍:需要理解一下

十四、Matplotlib的lines和line2D

  • 参考文档:
    (1)https://matplotlib.org/api/lines_api.html
    (2)https://matplotlib.org/api/_as_gen/matplotlib.lines.Line2D.html#matplotlib.lines.Line2D.set_drawstyle
  • 举例说明:无
  • 参数介绍:无

十五、python中的list和array的不同之处

  • 参考文档:(1)https://blog.csdn.net/liyaohhh/article/details/51055147#reply
  • 举例说明:无
  • 参数介绍:无

十六、pyqtgraph绘图库

  • 参考文档:(1)https://www.cnblogs.com/XJT2018/p/10272607.html
  • 举例说明:无
  • 参数介绍:无

十七、Matplotlib绘图刷新功能的可能方法?

  • 参考文档:(1)https://blog.csdn.net/qq_36321889/article/details/85692364
  • 举例说明:无
  • 参数介绍:无

十八、Py之sip:Python库之sip的简介、安装、使用方法之详细攻略

  • 参考文档:(1)https://blog.csdn.net/qq_41185868/article/details/80902785
  • 举例说明:无
  • 参数介绍:无

十九、python极客项目编程

  • 参考文档:
    (1)python3环境下用matplotlib库实现UI交互
    (2)https://blog.csdn.net/qq_33363973/article/details/80733569
  • 举例说明:无
  • 参数介绍:无

二十、python中plot实现即时数据动态显示方法

  • 参考文档:
    (1)https://blog.csdn.net/u013468614/article/details/58689735
    (2)matplotlib动态刷新指定曲线:https://blog.csdn.net/oMoDao1/article/details/81223240
  • 举例说明:很好玩
  • 参数介绍:很好玩

二十一、 matplotlib、python绘图的一些方法

  • 参考文档:
    (1)【matplotlib】 之 清理、清除 axes 和 figure:https://blog.csdn.net/tz_zs/article/details/81393098
    (2)理解fig,ax = plt.subplots():https://blog.csdn.net/xavier_muse/article/details/83859272
    (3)生成指定范围内指定个数的一维数组:https://blog.csdn.net/u013555719/article/details/83989987
    (4)基于PyQt Canvas Matplotlib图形绘制:https://blog.csdn.net/battlestar/article/details/82728800
    (5)matplotlib 使用简明教程(五)-画布、图表、元素基础操作:https://blog.csdn.net/fenghuizhidao/article/details/83090320
  • 举例说明:无
  • 参数介绍:无

你可能感兴趣的:(编程学习笔记)