重慶建站模板源碼推動防控措施持續(xù)優(yōu)化
Matplotlib數(shù)據(jù)可視化綜合應(yīng)用圖形配置
- 第1關(guān) 配置顏色條
- 第2關(guān) 設(shè)置注釋
- 第3關(guān) 自定義坐標刻度
- 第4關(guān) 配置文件與樣式表
第1關(guān) 配置顏色條
任務(wù)描述
本關(guān)任務(wù):使用colorbar繪制一個熱成像圖。
編程要求
在右側(cè)編輯器Begin-End處補充代碼,根據(jù)輸入數(shù)據(jù)繪制熱成像圖并隱藏坐標軸,具體要求如下:
- 圖形的figsize為(10, 10);
- 圖形保存到Task1/img/T1.png。
測試說明
平臺會對你編寫的代碼進行測試:
預期輸出:你的答案與正確答案一致
開始你的任務(wù)吧,祝你成功!
import matplotlib
matplotlib.use("Agg")
import matplotlib.pyplot as plt
import numpy as npdef student(data):# ********* Begin *********#plt.figure(figsize=(10,10))plt.imshow(data,cmap='hot')plt.colorbar()plt.savefig('Task1/img/T1.png')plt.show()# ********* End *********#
第2關(guān) 設(shè)置注釋
任務(wù)描述
本關(guān)任務(wù):掌握matplotlib設(shè)置注釋的幾種方法和文字坐標變換,并能夠應(yīng)用到圖形中。
編程要求
在右側(cè)編輯器補充代碼,根據(jù)函數(shù)參數(shù)file_name讀取文件,統(tǒng)計每年births的總和并作折線圖,為最高/最低出生數(shù)年份設(shè)置注釋,具體要求如下:
- 對數(shù)據(jù)進行去空值處理;
- 注釋文字的坐標位置為被注釋的坐標點減5;
- 折線圖的figsize為(10, 10);
- 圖形需保存到Task2/img2/T5.png。
測試說明
平臺會對你編寫的代碼進行測試:
測試輸入:Task2/births.csv
預期輸出:你的答案與正確答案一致
開始你的任務(wù)吧,祝你成功!
import matplotlib
matplotlib.use('Agg')
import pandas as pd
import matplotlib.pyplot as plt
import numpy as np
import warnings
warnings.filterwarnings("ignore")
import matplotlib as mpl
def student(file_name):# ********* Begin *********#fig = plt.figure(figsize=(10,10))data = pd.read_csv(file_name)data = data.dropna(axis=0,how='any') data = data.groupby(['year'])[['births']].sum()plt.plot(data.index,data.values)dic = data.to_dict()dic = dic['births']maxx=max(dic,key=dic.get)minn=min(dic,key=dic.get)plt.annotate('max', xy=(maxx,dic[maxx]), xytext=(maxx-5,dic[maxx]-5), arrowprops=dict(facecolor='black', shrink=0.05))plt.annotate('min', xy=(minn,dic[minn]), xytext=(minn-5,dic[minn]-5), arrowprops=dict(facecolor='black', shrink=0.05))plt.savefig('Task2/img2/T5.png')# ********* End *********#
第3關(guān) 自定義坐標刻度
任務(wù)描述
本關(guān)任務(wù):掌握如何將坐標軸刻度調(diào)整為需要的位置與格式。
編程要求
在右側(cè)編輯器補充代碼,根據(jù)file_path讀取文件,統(tǒng)計不同二級類的數(shù)量做折線圖并旋轉(zhuǎn)x坐標軸90度,具體要求如下:
- 圖形的figsize為(10, 10);
- 圖形需保存到Task3/img/T1.png。
數(shù)據(jù)內(nèi)容如下:
測試說明
平臺會對你編寫的代碼進行測試:
測試輸入:Task3/fj1.csv
預期輸出:你的答案與正確答案一致
開始你的任務(wù)吧,祝你成功!
import matplotlib
matplotlib.use("Agg")
import matplotlib.pyplot as plt
import numpy as np
import pandas as pd
plt.rcParams['font.sans-serif']=['simhei']
plt.rcParams['font.family']='sans-serif'
plt.rcParams['axes.unicode_minus']=Falsedef student(file_path):# ********* Begin *********#plt.figure(figsize=(10,10))data=pd.read_csv(file_path)a=data.groupby(["二級類"])["二級類"].count()plt.plot(a)plt.xticks(rotation=90)plt.savefig("Task3/img/T1.png")plt.show()# ********* End *********#
第4關(guān) 配置文件與樣式表
任務(wù)描述
本關(guān)任務(wù):掌握手動配置圖形和修改默認配置,能夠修改樣式表。
編程要求
在右側(cè)編輯器補充代碼,根據(jù)輸入數(shù)據(jù)繪制直方圖調(diào)整直方圖顏色為紅色透明度0.7為,并設(shè)置組合樣式classic和bmh,具體要求如下:
- 折線圖的figsize為(10, 10)
- 圖形需保存到Task4/img/T1.png
測試說明
平臺會對你編寫的代碼進行測試:
預期輸出:你的答案與正確答案一致
開始你的任務(wù)吧,祝你成功!
import matplotlib
matplotlib.use("Agg")
import matplotlib.pyplot as plt
import numpy as np
import pandas as pddef student(input_data):# ********* Begin *********#plt.figure(figsize=(10,10))plt.style.use(["classic","bmh"])plt.hist(input_data,facecolor="red",alpha=0.7)plt.savefig("Task4/img/T1.png")plt.show()# ********* End *********#