【ROS报错】运行rqt相关组件显示“已放弃 (核心已转储)”的解决办法、

错误日志:

运行rqt_plot时显示以下报错:

Traceback (most recent call last):
  File "/opt/ros/melodic/lib/python2.7/dist-packages/rqt_plot/data_plot/mat_data_plot.py", line 110, in resizeEvent
    self.figure.tight_layout()
  File "/usr/lib/python2.7/dist-packages/matplotlib/figure.py", line 2030, in tight_layout
    pad=pad, h_pad=h_pad, w_pad=w_pad, rect=rect)
  File "/usr/lib/python2.7/dist-packages/matplotlib/tight_layout.py", line 351, in get_tight_layout_figure
    pad=pad, h_pad=h_pad, w_pad=w_pad)
  File "/usr/lib/python2.7/dist-packages/matplotlib/tight_layout.py", line 132, in auto_adjust_subplotpars
    fig.transFigure.inverted())
  File "/usr/lib/python2.7/dist-packages/matplotlib/transforms.py", line 1891, in inverted
    self._inverted = Affine2D(inv(mtx), shorthand_name=shorthand_name)
  File "/usr/lib/python2.7/dist-packages/numpy/linalg/linalg.py", line 513, in inv
    ainv = _umath_linalg.inv(a, signature=signature, extobj=extobj)
  File "/usr/lib/python2.7/dist-packages/numpy/linalg/linalg.py", line 90, in _raise_linalgerror_singular
    raise LinAlgError("Singular matrix")
numpy.linalg.linalg.LinAlgError: Singular matrix
已放弃 (核心已转储)

通过错误日志可以看到问题来自matplotlib包,现提供两种解决办法供使用:

解决方案1

Terminal运行指令:

rqt

打开Default-rqt界面后选择【Plugins】—【Visualization】–【plot】即可正常使用,遇到其他rqt组件报错也可这样解决。

解决方案2

重新安装matplotlib包
运行指令:

pip install -U matplotlib

若显示pip未安装需要先安装pip:

sudo apt install python-pip

至此问题解决,rqt组件完美运行。

在这里插入图片描述