前提
・python3をインストール済
・matplotlibインストール済み
・ソースコード自体におそらく問題なし(別PCで動作確認済み)
実現したいこと
from matplotlib import pyplot as plt
を用いたい
発生している問題・エラーメッセージ
エラーメッセージ Traceback (most recent call last): File "C:\Users\hb\Desktop\卒業研究\mapping_simu-master\Alea\out\artifacts\Alea_jar\make-job-A.py", line 4, in <module> from matplotlib import pyplot as plt File "C:\Users\hb\AppData\Local\Programs\Python\Python311\Lib\site-packages\matplotlib\__init__.py", line 113, in <module> from . import _api, _version, cbook, _docstring, rcsetup File "C:\Users\hb\AppData\Local\Programs\Python\Python311\Lib\site-packages\matplotlib\rcsetup.py", line 27, in <module> from matplotlib.colors import Colormap, is_color_like File "C:\Users\h\AppData\Local\Programs\Python\Python311\Lib\site-packages\matplotlib\colors.py", line 56, in <module> from matplotlib import _api, _cm, cbook, scale File "C:\Users\hb\AppData\Local\Programs\Python\Python311\Lib\site-packages\matplotlib\scale.py", line 22, in <module> from matplotlib.ticker import ( File "C:\Users\hb\AppData\Local\Programs\Python\Python311\Lib\site-packages\matplotlib\ticker.py", line 138, in <module> from matplotlib import transforms as mtransforms File "C:\Users\hb\AppData\Local\Programs\Python\Python311\Lib\site-packages\matplotlib\transforms.py", line 49, in <module> from matplotlib._path import ( ImportError: DLL load failed while importing _path: 指定されたモジュールが見 つかりません。
該当のソースコード
python
1import csv 2import random 3from numpy.random import * 4from matplotlib import pyplot as plt 5 6# swfファイル作成のためのlist 7rowlist = [] 8 9job_v = input("job volume = ") 10job_v = int(job_v) 11 12#ジョブ実行時間用リスト作成(int型)→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→ 13''' 14# 平均30000, 標準偏差5000の正規乱数を生成(ジョブ実行時間用) 15values = normal(30000, 5000, job_v) 16#整数に変換 17values = values.astype(int) 18''' 19 20''' 21#1秒以上86400秒(一日)以下の範囲から整数刻みで乱数を生成(ジョブ実行時間用) 22values = [] 23for i in range(job_v): 24 values.append((randint(86399) + 1)) 25''' 26 27#1秒以上28800秒(8時間)以下の範囲から整数刻みで乱数を生成(ジョブ実行時間用) 28values = [] 29for i in range(job_v): 30 values.append((randint(28799) + 1)) 31 32 33#ジョブ実行時間用リスト作成(int型)→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→ 34 35 36#並列数用リスト作成============================================================ 37''' 38#80%で1,10%で2,残りの10%ずつで3,4(8ノード用) 39hei = [] 40for i in range(job_v): 41 r = randint(99) 42 #print(r) 43 if r < 20: 44 if r < 5: 45 hei.append(str(60)) 46 elif r >= 5 and r < 10: 47 hei.append(str(80)) 48 else: 49 hei.append(str(40)) 50 else: 51 hei.append(str(20)) 52 53 54''' 55''' 56#53.6%で1,26.4%で2,残りの20%で4~16(32ノード用) 57hei = [] 58for i in range(job_v): 59 r = randint(99) 60 #print(r) 61 if r < 20: 62 hei.append(str((randint(14) + 2) * 20)) 63 else: 64 if (r % 3) == 0: 65 hei.append(str(40)) 66 else: 67 hei.append(str(20)) 68''' 69#53.6%で1,26.4%で2,残りの20%で5~8(16ノード用) 70hei = [] 71for i in range(job_v): 72 r = randint(99) 73 #print(r) 74 if r < 20: 75 hei.append(str((randint(6) + 2) * 20)) 76 else: 77 if (r % 3) == 0: 78 hei.append(str(40)) 79 else: 80 hei.append(str(20)) 81 82 83 84 85''' 86#20%の確率で並列数2 87hei = [] 88for i in range(job_v): 89 if (i % 5) == 0: 90 hei.append(str(20)) 91 else: 92 hei.append(str(80)) 93''' 94 95#並列数用リスト作成============================================================ 96 97#到着時間用リスト作成~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 98to = [] 99#最初のジョブの到着を0、以降のジョブは1つ前のジョブが到着してから0秒以上1000秒以下の範囲から秒刻み 100atime =0 101for i in range(job_v): 102 to.append(str(atime)) 103 atime += randint(999) + 1 104 105 106#到着時間用リスト作成~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 107 108 109for i in range(job_v): 110 # 空のリストを追加 111 rowlist.append([]) 112 #それぞれデータを入れる 113 rowlist[i].append(str(i+1))#ジョブID 114 rowlist[i].append(to[i])#到着時間 115 rowlist[i].append(str(0)) 116 rowlist[i].append(str(values[i]))#実行時間 117 rowlist[i].append(hei[i])#並列数 118 rowlist[i].append(str(-1))#-1 119 rowlist[i].append(str(-1))#-1 120 rowlist[i].append(str(-1))#-1 121 rowlist[i].append(str(-1))#-1 122 rowlist[i].append(str(-1))#-1 123 rowlist[i].append(str(-1))#-1 124 rowlist[i].append(str(-1))#-1 125 rowlist[i].append(str(-1))#-1 126 rowlist[i].append(str(-1))#-1 127 128 ''' 129 #8ノード用 130 if int(hei[i]) == 20:#並列数1はキュー番号1,2はキュー番号2, 3~4キュー番号3 131 t = 1 132 elif int(hei[i]) == 40: 133 t = 2 134 else: 135 t = 3 136 137 138 ''' 139 #32ノード用 140 if int(hei[i]) == 40 or int(hei[i]) == 20:#並列数1,2はキュー番号1,3~9キュー番号2, 10~16キュー番号3 141 t = 1 142 elif int(hei[i]) > 40 and int(hei[i]) <= 180: 143 t = 2 144 else: 145 t = 3 146 147 ''' 148 t = 1 149 if hei[i] == '20':#並列数1はキュー番号②,並列数2はキュー① 150 t = 2 151 ''' 152 rowlist[i].append(str(t))#キュー番号 153 rowlist[i].append(str(-1))#-1 154 rowlist[i].append(str(-1))#-1 155 rowlist[i].append(str(-1))#-1 156 rowlist[i].append(str(-1))#-1 157 rowlist[i].append(str(20))#20 158 rowlist[i].append(str(-1))#-1 159 160# リストからcsvファイルに書き込み 161with open('./result.swf', 'w', newline="") as f: 162 datawriter = csv.writer(f) 163 datawriter.writerows(rowlist) 164 165 166
試したこと
ここに問題に対して試したことを記載してください。
補足情報(FW/ツールのバージョンなど)
ここにより詳細な情報を記載してください。