Sit*_*iti 8 python csv matplotlib
我想绘制印度 Covid-19 的图表,到目前为止,当我手动输入数据作为 x 轴和 y 轴时没有问题。但由于数据很长,当我想将其读取为 .csv 文件时,它给了我这个错误'value' 必须是 str 或 bytes 的实例,而不是 float。我也尝试包装int(corona_case),但又给了我另一个新错误,无法将系列转换为 <class 'int'。另外,如果有人能建议我使用 python 绘制涉及日期时间的图形的教程,我将非常感激,因为这是我第一次学习 python。我正在使用Python 3。
p/s 我似乎找不到共享我的 csv 文件的方法,所以我将把它留在片段中。
import pandas as pd
from datetime import datetime, timedelta
from matplotlib import pyplot as plt
from matplotlib import dates as mpl_dates
import numpy as np
plt.style.use('seaborn')
data = pd.read_csv('india.csv')
corona_date = data['Date']
corona_case = data['Case']
plt.plot_date (corona_date, corona_case, linestyle='solid')
plt.gcf().autofmt_xdate()
plt.title('COVID-19 in India')
plt.xlabel('Date')
plt.ylabel('Cumulative Case')
plt.tight_layout()
plt.show()
Run Code Online (Sandbox Code Playgroud)
Date,Case
2020-09-30,6225763
2020-10-01,6312584
2020-10-02,6394068
2020-10-03,6473544
2020-10-04,6549373
2020-10-05,6623815
2020-10-06,6685082
Run Code Online (Sandbox Code Playgroud)
小智 0
您可以像这样转换 pandas 数据框中的列类型。
corona_case = data['case'].astype(int) # or str for string
Run Code Online (Sandbox Code Playgroud)
如果这就是你想要做的。