numpy - Python matplotlib 畫直方圖出錯(cuò)?
問題描述
sql3 = ’select sum(comment_num) as total_col,create_time from article GROUP BY create_time’df = pd.read_sql(sql3, conn)print(df)# 總數(shù)# N = 22# 寬度width = 0.45# ind = np.arange(N)plt.bar(df[’create_time’], df[’total_col’], width, color=’r’, label=’total_col’)plt.xlabel(u'發(fā)表日期')plt.ylabel(u'總評(píng)論數(shù)')plt.title(u'每日發(fā)表文章的總評(píng)論數(shù)直方分布圖')plt.legend()plt.show()
df:
total_col create_time0 2.0 2017-04-271 0.0 2017-05-092 3.0 2017-05-103 6.0 2017-05-114 3.0 2017-05-125 2.0 2017-05-136 1.0 2017-05-147 0.0 2017-05-158 5.0 2017-05-169 0.0 2017-05-17101.0 2017-05-18110.0 2017-05-19126.0 2017-05-22130.0 2017-05-24141.0 2017-05-25150.0 2017-05-26166.0 2017-05-27174.0 2017-05-2918 16.0 2017-05-31194.0 2017-06-02202.0 2017-06-04211.0 2017-06-05
錯(cuò)誤:
Traceback (most recent call last): File 'D:/PyCharm/py_scrapyjobbole/data_analysis.py', line 46, in <module> plt.bar(df[’create_time’], df[’total_col’], width, color=’r’, label=’total_col’) File 'D:python-3.5.2libsite-packagesmatplotlibpyplot.py', line 2704, in bar **kwargs) File 'D:python-3.5.2libsite-packagesmatplotlib__init__.py', line 1898, in inner return func(ax, *args, **kwargs) File 'D:python-3.5.2libsite-packagesmatplotlibaxes_axes.py', line 2105, in bar left = [left[i] - width[i] / 2. for i in xrange(len(left))] File 'D:python-3.5.2libsite-packagesmatplotlibaxes_axes.py', line 2105, in <listcomp> left = [left[i] - width[i] / 2. for i in xrange(len(left))]TypeError: unsupported operand type(s) for -: ’datetime.date’ and ’float’
問題解答
回答1:試試astype()轉(zhuǎn)換型別,參見stackoverflow
%matplotlib inlineimport pandas as pddf = pd.DataFrame.from_csv(’timeseries.tsv’, sep='t')df[’total_col’] = df[’total_col’].astype(float)df[’create_time’] = df[’create_time’].astype(’datetime64[D]’)df.set_index([’create_time’]).plot(kind=’bar’)

plt.bar(df[’create_time’], df[’total_col’], width, color=’r’, label=’total_col’)
里面的left, height參數(shù)應(yīng)該是數(shù)值形的list,你現(xiàn)在df[’create_time’]傳遞的是時(shí)間類型的列表
相關(guān)文章:
1. boot2docker無法啟動(dòng)2. 關(guān)docker hub上有些鏡像的tag被標(biāo)記““This image has vulnerabilities””3. docker-compose中volumes的問題4. java - SSH框架中寫分頁(yè)時(shí)service層中不能注入分頁(yè)類5. nignx - docker內(nèi)nginx 80端口被占用6. javascript - mock.js可以存儲(chǔ)數(shù)據(jù)嗎7. docker安裝后出現(xiàn)Cannot connect to the Docker daemon.8. dockerfile - 為什么docker容器啟動(dòng)不了?9. docker api 開發(fā)的端口怎么獲取?10. golang - 用IDE看docker源碼時(shí)的小問題

網(wǎng)公網(wǎng)安備