2016-08-23 45 views
0

私はpyqtgraphを使って遊んでいて、デフォルトのfloatではなくx軸の目盛りラベルとして文字列を追加する必要があるという問題が発生しました。私は周りを見回して見つけましたShow string values on x-axis in pyqtgraphx tickのPyqtgraph文字列

解決策の種類は私がする必要があります(ページの最初の解決策、私はPython 3.5のために問題を引き起こすでしょう)。だから最初の解決策を修正しようとしましたが、うまくいきませんでした。

from PyQt4 import QtCore 
import pyqtgraph as pg 

x = ['a', 'b', 'c', 'd', 'e', 'f'] 
y = [1, 2, 3, 4, 5, 6] 
xdict = dict(enumerate(x)) 

win = pg.GraphicsWindow() 
stringaxis = pg.AxisItem(orientation='bottom') 
stringaxis.setTicks([xdict.items()]) 
plot = win.addPlot(axisItems={'bottom': stringaxis}) 
curve = plot.plot(xdict.keys(),y) 

if __name__ == '__main__': 
    import sys 
    if sys.flags.interactive != 1 or not hasattr(QtCore, 'PYQT_VERSION'): 
     pg.QtGui.QApplication.exec_() 

私は取得していますエラーがTypeError例外です:「dict_keys」オブジェクトがライン

curve = plot.plot(xdict.keys(),y) 

にインデックス付けをサポートしていない私は、次のようにそれをすることによって、リストにそれを回す試してみました:

curve = plot.plot(list(sdict.keys(),y)) 

しかし、これは出力に小さな問題がありましたplot window with problem

問題はthですプロットの左上に別の軸が追加されています。誰かが私がここで間違っていることを教えてもらえますか?

答えて

0

私は自分の質問に答えることができるかどうか分かりませんでしたので、私はそれを見て、https://stackoverflow.com/help/self-answerを見つけました。だからここに答えがある。

pyqtgraph googleグループhttps://groups.google.com/forum/#!searchin/pyqtgraph/string|sort:relevance/pyqtgraph/pSIn0xNGodA/79pR3dUBLAAJにアクセスし、Upol Ryskulovaの質問をご覧ください。彼はまったく同じ質問をしています。そのコメントへの応答は、pyqtgraphのバグであることを確認します。これは修正されましたが、修正はまだ私のアナコンダディストリビューションに伝播していません。だから私がしなければならないことは、しばらく待ってからバグが消えてしまうことです。この修正はグループでも議論されており、コードには何も問題はありません。

関連する問題