Txoj haujlwm no yuav rov qab qhov kev thov raws li cov ntaub ntawv thav duab.
Kev pom cov ntaub ntawv
Txhawm rau daws qhov teeb meem no, xaiv matplotlib.
import matplotlib.pyplot as plt
Peb xav tau tsib yam, qhov twg x yog x-axis cov ntaub ntawv, x_label yog lub npe rau lub axis, y yog cov ntaub ntawv y-axis, y_label yog lub npe rau lub axis, thiab lub npe yog lub npe ntawm tag nrho cov kev pom.
def visualize_bar_chart(x, x_label, y, y_label, title):
plt.title(title)
plt.xlabel(x_label)
plt.ylabel(y_label)
index = np.arange(len(x))
plt.xticks(index, x, fontsize=5, rotation=30)
plt.bar(index, y)
return plt
Txuag daim duab
Tam sim no cia peb siv ob txoj haujlwm los tsim kev pom thiab txuag nws.
Peb yuav xa tus naj npawb ntawm cov ntawv tshaj tawm txhua hnub. Ua ntej peb sau ntawv thov.
query = """
SELECT DATE(creation_date) date, COUNT(*) total_posts
FROM `bigquery-public-data.stackoverflow.post_history`
GROUP BY 1
HAVING date > DATE_SUB('2018-12-02', INTERVAL 14 DAY)
ORDER BY 1
"""
Cov lus nug pab sau cov ntaub ntawv rau ob lub lis piam pib txij lub Kaum Ob Hlis 2, 2018.
Peb siv hnub no vim 2018-12-02 yog cov ntaub ntawv tshiab tshaj plaws uas tau sau tseg hauv bigquery-public-data.stackoverflow.post_history, lwm qhov koj tuaj yeem siv CURRENT_DATE() kom tau txais cov ntaub ntawv tshiab tshaj plaws.
Hu rau query_to_bigquery muaj nuj nqi kom tau txais cov ntaub ntawv.
dataframe = query_to_bigquery(query)
Tom qab ntawd peb siv cov hnub cov ntaub ntawv kab rau x-axis, thiab tag nrho_posts kem rau y-axis.
x = dataframe['date'].tolist()
y = dataframe['tolist_posts'].tolist()
Peb qhwv cov lej no hauv qhov haujlwm hu ua get_and_save_image.
def get_and_save_image():
query = """
SELECT DATE(creation_date) date, COUNT(*) total_posts
FROM `bigquery-public-data.stackoverflow.post_history`
GROUP BY 1
HAVING date > DATE_SUB('2018-12-02', INTERVAL 14 DAY)
ORDER BY 1
"""
dataframe = query_to_bigquery(query)
x = dataframe['date'].tolist()
y = dataframe['total_posts'].tolist()
plt = visualize_bar_chart(x=x, x_label='Date', y=y, y_label='Total Posts', title='Daily Posts')
plt.savefig('viz.png')
Xa ib daim duab
Txhawm rau xa daim ntawv tshaj tawm mus rau tus neeg txais, koj yuav tsum paub qhov chat_id parameter.