私のFedora 24を25にアップグレードした後、Fedora 24の下でうまく動作していたpythonスクリプトを実行することに問題があります。ファイルのbackend
のデフォルトリストから何を選択しても、プロットは生成できません。特に、backend
のリストでQt5Agg
を選択すると、この奇妙なエラーメッセージが表示され、検索するだけでインターネット上のものが見つからないというのは本当に気になります。しかし、私はまた、アップグレードで何かが私のpythonやQtパッケージに悪影響を及ぼす可能性があることを知っています。なぜ接続性がbackend
(もしあれば)の選択と関係しているのか、そしてデフォルトの選択肢のどれもが何らかのエラーメッセージを取り除くことができない理由を知る必要がありますか?しかし具体的には、なぜQt5Agg
をデフォルトのbackend
としてmatplotlibrc
ファイルに設定すると、connect()
というようなエラーメッセージが表示されるのですか?スクリプトを投稿すると回答に役立つかどうか教えてください。Linuxアップグレード後に "TypeError:connect()がNavigationToolbar2QT.message [str]と_show_message()"の間で失敗しましたか?
import numpy as np
from numpy import nan
import pandas as pd
import matplotlib as mpl
#import matplotlib
#matplotlib.use('Qt5Agg')
import matplotlib.pyplot as plt
import pylab as pl
from uncertainties import ufloat
from uncertainties.umath import *
from matplotlib.ticker import MaxNLocator
from collections import OrderedDict
import astropy.units as u
from astropy.cosmology import FlatLambdaCDM, z_at_value
from numpy import sqrt, mean, square, std, maximum, minimum
from sklearn.metrics import mean_squared_error
from scipy.stats import poisson, chi2
import math
import sys
、エラーメッセージ::それはバックエンドのバグだ
QObject::connect: Cannot connect NavigationToolbar2QT::message(QString) to (null)::_show_message()
Traceback (most recent call last):
File "myscript.py", line 496, in <module>
f, ((ax1, ax6, ax11), (ax2, ax7, ax12), (ax3, ax8, ax13), (ax4, ax9, ax14), (ax5, ax10, ax15)) = plt.subplots(5, 3, sharex=True, sharey=False , figsize=(20,9))
File "/usr/lib/python3.5/site-packages/matplotlib/pyplot.py", line 1177, in subplots
fig = figure(**fig_kw)
File "/usr/lib/python3.5/site-packages/matplotlib/pyplot.py", line 527, in figure
**kwargs)
File "/usr/lib/python3.5/site-packages/matplotlib/backends/backend_qt5agg.py", line 43, in new_figure_manager
return new_figure_manager_given_figure(num, thisFig)
File "/usr/lib/python3.5/site-packages/matplotlib/backends/backend_qt5agg.py", line 51, in new_figure_manager_given_figure
return FigureManagerQT(canvas, num)
File "/usr/lib/python3.5/site-packages/matplotlib/backends/backend_qt5.py", line 465, in __init__
self.toolbar.message.connect(self._show_message)
TypeError: connect() failed between NavigationToolbar2QT.message[str] and _show_message()