前提・実現したいこと
Python Kivyのgarden.matplotlibを用いてグラフを描画したいと考えています。
発生している問題
こちら(https://myenigma.hatenablog.com/entry/2016/05/10/221433#matplotlib%E3%81%AE%E3%82%B0%E3%83%A9%E3%83%95%E3%82%92kivy%E3%81%AE%E4%B8%80%E9%83%A8%E3%81%A8%E3%81%97%E3%81%A6%E5%88%A9%E7%94%A8%E3%81%99%E3%82%8B)のソースコードをそのまま使ってとりあえずプロットしようとしたら、以下のようなエラーが出てきました。
どのように解決するとよいのでしょうか。
宜しくお願いいたします。
エラー文
[INFO ] [Logger ] Record log in /Users/shu/.kivy/logs/kivy_18-10-08_34.txt [INFO ] [Kivy ] v1.10.1 [INFO ] [Python ] v3.6.1 (default, Mar 2 2018, 20:32:58) [GCC 4.2.1 Compatible Apple LLVM 9.0.0 (clang-900.0.39.2)] [INFO ] [Factory ] 194 symbols loaded [INFO ] [Image ] Providers: img_tex, img_imageio, img_dds, img_sdl2, img_gif (img_pil, img_ffpyplayer ignored) [INFO ] [Text ] Provider: sdl2 Traceback (most recent call last): File "graph.py", line 8, in <module> import matplotlib.pyplot as pl File "/Users/shu/.pyenv/versions/TensorFlow/lib/python3.6/site-packages/matplotlib/pyplot.py", line 2371, in <module> switch_backend(rcParams["backend"]) File "/Users/shu/.pyenv/versions/TensorFlow/lib/python3.6/site-packages/matplotlib/pyplot.py", line 207, in switch_backend backend_mod = importlib.import_module(backend_name) File "/Users/shu/.pyenv/versions/3.6.1/lib/python3.6/importlib/__init__.py", line 126, in import_module return _bootstrap._gcd_import(name[level:], package, level) File "/Users/shu/.pyenv/versions/TensorFlow/lib/python3.6/site-packages/kivy/garden/__init__.py", line 100, in load_module return self._load_module(fullname, moddir) File "/Users/shu/.pyenv/versions/TensorFlow/lib/python3.6/site-packages/kivy/garden/__init__.py", line 104, in _load_module ('', '', imp.PKG_DIRECTORY)) File "/Users/shu/.pyenv/versions/3.6.1/lib/python3.6/imp.py", line 244, in load_module return load_package(name, filename) File "/Users/shu/.pyenv/versions/3.6.1/lib/python3.6/imp.py", line 216, in load_package return _load(spec) File "/Users/shu/.kivy/garden/garden.matplotlib/__init__.py", line 1, in <module> from kivy.garden.matplotlib.backend_kivy import FigureCanvasKivy,\ File "/Users/shu/.kivy/garden/garden.matplotlib/backend_kivy.py", line 257, in <module> from matplotlib.font_manager import weight_as_number ImportError: cannot import name 'weight_as_number'
該当のソースコード
from kivy.app import App from kivy.uix.boxlayout import BoxLayout from kivy.uix.label import Label from kivy.config import Config import numpy as np import matplotlib matplotlib.use('module://kivy.garden.matplotlib.backend_kivy') import matplotlib.pyplot as pl import sys, os class GraphView(BoxLayout): def __init__(self, **kwargs): super(GraphView, self).__init__(orientation='vertical') self.add_widget(Label(text="embeded matplotlib sample")) self.add_widget(self.graph_plot_sample()) def graph_plot_sample(self): self.fig, ax = pl.subplots() x = np.linspace(-np.pi, np.pi) y = np.sin(x) ax.set_xlabel("X label") ax.set_ylabel("Y label") ax.grid(True) ax.plot(x, y) return self.fig.canvas class GraphApp(App): def build(self): height = 300 Config.set('graphics', 'height', height) Config.set('graphics', 'width', height * 2) return GraphView() if __name__ == '__main__': GraphApp().run()
補足情報(FW/ツールのバージョンなど)
MacBook Pro (macOS High Sierra 10.13.6)
Python 3.6.1
Cython 0.28.5
Kivy 1.10.1
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。