Pythonで書かれた以下のコードは、ExcelからPythonにデータをインポートし、次にmatplotlibでプロットします。私は、上記とfill_between
機能を使用して、異なる色のライン80の下に埋めるためにしようとしているが、それはfill_betweenは "ValueError:引数の次元は互換性がありません"
ValueError: Argument dimensions are incompatible
注与える: Excelファイル('eegg.xlsx'
は)(682行と4列があり、int
データが含まれています0-100)。
fill_between
コールのwhere
引数が問題だと思いますが、これを解決できません。
import xlrd
import numpy
from datetime import time
from pylab import *
workbook = xlrd.open_workbook('eegg.xlsx')
worksheet = workbook.sheet_by_name('Sayfa1')
num_rows = worksheet.nrows - 1
num_cells = worksheet.ncols - 1
curr_row = -1
att=[]
med=[]
for i in [2,3]:
kolon = worksheet.col(i)
for x in kolon[1:]:
d= int(x.value)
if i==2:
att.append(d)
elif i==3:
med.append(d)
n = len(att)
X = np.linspace(0,n,n,endpoint=True)
Y1 = att
plot(X, Y1, color='blue', alpha=1.00)
fill_between(X, 0, Y1, (Y1) > 80, color='red', alpha=.25)
fill_between(X, 0, Y1, (Y1) < 80, color='blue', alpha=.25)
xlim(0,n), xticks([])
ylim(0,110), yticks([])
あなたは 'X'と 'Y1'の形状をプリントアウトすることができますか? 'print X.shape、Y1.shape'を実行します。 –
エラーの種類がわかっていれば問題を解決するのに役立つかもしれませんが、**完全なトレースバック**を投稿すると、エラーが発生する可能性が高くなります。 – hooy