Я пытаюсь построить эти данные с помощью matplotlib.
Я могу получить все данные и составить график Джонс против времени, но мой масштаб становится дурацким, когда я попробуйте использовать набор данных Falls.
График и код, которые я создал, приведены ниже.
import gspread
from oauth2client.service_account import ServiceAccountCredentials
import pandas as pd
from pandas import DataFrame
import datetime as dt
import matplotlib.pyplot as plt
import matplotlib.dates as mdates
import numpy as np
scope = ['https://spreadsheets.google.com/feeds',
'https://www.googleapis.com/auth/drive']
credentials = ServiceAccountCredentials.from_json_keyfile_name(
'pandastest-273019-00f3c09845fb.json', scope) # Your json file here
gc = gspread.authorize(credentials)
wks = gc.open("data").sheet1
data = wks.get_all_values()
headers = data.pop(0)
df = pd.DataFrame(data, columns=headers)
pd.set_option("display.max_rows",None,"display.max_columns", None)
print(df.head())
dates = []
fort = []
jones = []
pat = []
ferry = []
middle = []
north = []
canton = []
for x in data[:]:
for i in range(0, len(x)):
try:
x[i] = int(x[i])
except:
continue
print(x)
dates.append(x[0])
fort.append(x[1])
jones.append(x[2])
pat.append(x[3])
ferry.append(x[4])
middle.append(x[5])
north.append(x[6])
canton.append(x[7])
#fort
x = [dt.datetime.strptime(d,'%m/%d/%Y').date() for d in dates]
plt.gca().xaxis.set_major_formatter(mdates.DateFormatter('%m/%d/%Y'))
plt.gca().xaxis.set_major_locator(mdates.DayLocator(interval=29))
plt.plot(x,fort)
plt.gcf().autofmt_xdate()
plt.legend(["fort", ])
plt.xlabel("Dates")
plt.ylabel("Matter")
plt.show()
Кто-нибудь знает, почему это происходит и как я могу это исправить?