##やろうとしていること
ラズパイで作成したcsvファイルを、matplotlibを使用してグラフ化させたいと考えています。
(プログラムコードを最後に掲載します。)
##困っていること
プログラムを実行すると、次のエラーが発生します。
html
1Traceback (most recent call last): 2 File "./test.py", line 9, in <module> 3 import matplotlib 4 File "/home/pi/.local/lib/python2.7/site-packages/matplotlib/__init__.py", line 130, in <module> 5 from matplotlib.rcsetup import defaultParams, validate_backend, cycler 6 File "/home/pi/.local/lib/python2.7/site-packages/matplotlib/rcsetup.py", line 29, in <module> 7 from matplotlib.fontconfig_pattern import parse_fontconfig_pattern 8 File "/home/pi/.local/lib/python2.7/site-packages/matplotlib/fontconfig_pattern.py", line 28, in <module> 9 from backports.functools_lru_cache import lru_cache 10ImportError: No module named functools_lru_cache
##教えてほしいこと
エラーの最後に
"No module named functools_lru_cache"とあるのですが、
次のコマンドを実行し、
pi@raspberrypi:~ $ pip install backports.functools_lru_cache
次の結果が得られています。
html
1Looking in indexes: https://pypi.org/simple, https://www.piwheels.org/simple 2Requirement already satisfied: backports.functools_lru_cache in /home/pi/.local/lib/python2.7/site-packages (1.5)
functools_lru_cacheはインストールできているのに、なぜ↑のエラーが発生するのかが分かりません。
##バージョン情報
matplotlibのバージョンは、2.2.4です。
##プログラムコード
html
1#!/usr/bin/python 2# -*- coding: utf-8 -*- 3 4#Save the temperature, humidity, and atmospheric pressure obtained from bme280 in csv 5#csv format: 6#year,month,date,hour,min,val 7 8 9import matplotlib.pyplot as plt 10import csv 11 12 13MAX_RANGE=50 14URL_PATH="/home/pi/dev/data/" 15 16temp=[0 for i in range(MAX_RANGE)] 17date=[0 for i in range(MAX_RANGE)] 18span=[] 19 20for i in range(MAX_RANGE): 21 span.append(1000/MAX_RANGE*i) 22 23fp=open(URL_PATH+"temp.csv","rb") 24reader=csv.reader(fp) 25for row in reader: 26 temp.pop(0) 27 temp.append(float(row[5])) 28 date.pop(0) 29 #month/date_hour:minute 30 date.append("%02d"%int(row[1])+"/"+"%02d"%int(row[2])+"_"+"%02d"%int(row[3])+":"+"%02d"%int(row[4])) 31fp.close() 32 33fig=plt.figure(figsize=(16,9)) 34ax=fig.add_subplot(1,1,1) 35plt.title("Temperature") 36plt.gca().get_yaxis().get_major_formatter().set_useOffset(False) 37plt.xlabel("month/date_hour:minute") 38plt.ylabel("degree Celsius") 39plt.plot(temp,color="m") 40plt.xticks(range(MAX_RANGE),date) 41grid(True) 42labels=ax.set_xticklabels(date,rotation=90,fontsize="small") 43 44plt.show() 45plt.savefig(URL_PATH+"temp.png",bbox_inches="tight") 46
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。