Scratch繪製柱狀圖_風聞
壹零社-最新鲜的互联网产业资讯2021-10-29 17:21
文/陳新龍
關於Python數據分析的內容相信大家一定都不陌生,在學習Python過程中我們接觸了許多常用的庫,比如:Numpy(它給Python提供了真正的數組功能,以及對數據進行快速處理的函數)、Matplotlib(它是最著名的繪圖庫,主要是二維繪圖,也可以支持簡單的三維繪圖)、Pandas(它是Python下最強大的數據分析和探索工具);但是由於Python數據分析的知識點多且複雜,導致很多學生並不能很好的理解其中的語法,詢問小陳老師有沒有其他數據分析的案例,今天我們通過Scratch編程做一個簡單的成績分佈柱狀圖。
通常在學校考試結束後,老師首先會批改試卷,其次根據試卷的分數從高到低排序,查看班級中優秀、良好、合格、不合格的人數,分析試卷錯題的知識點,一旦班級人數和考試科目比較多,老師統計的工作量就非常大,消耗時間也很長,為了節約工作量,並且提高我們的編程能力,便可以通過Scratch完成簡單的成績分佈圖。
首先我們需要對成績進行一個大致的篩選與處理,新建文本文件或者Excel文件,將同學的數據輸入到文件中,在Scratch中新建分數列表,右鍵點擊列表將數據導入(圖1)。
導入成功後,通過循環變量的方式對列表中每一項的數據進行提取篩選(大於90分為優秀;80分-90分間為良好;60-80分間為合格;小於60分為不合格)。分別創建四個變量“優秀、良好、合格、不合格”用於保存統計結果,並且將結果存入到新列表“成績分佈表”中。到此為止,我們的提取篩選步驟正式結束。接下來可以根據列表中的內容進行柱狀圖的繪製(圖2)。
在繪圖之前,我們需要在造型中安排好優秀、良好、合格、不合格繪圖的位置和頂端的標題,其次確定好起點和終點的位置距離和間隔,如圖3所示,我的起始位置為(-235,130)終點位置是(230,-130)中間相隔465,這裏需要注意落筆和抬筆的方式(圖3)。
新建三個變量:高(通過提取成績分佈列表中的數據乘一定的倍數,暫定20),寬(根據舞台的區域進行設定,暫且設定為95),間隔(根據每一段的成績與成績之間進行相應的間隔,暫且設定為30),這些取值並不是絕對數據,大家可以根據實際的繪製效果來決定。
在列表中我們分成了四個層次階段,代表外層循環重複執行四次,由於繪製出柱狀圖還需要增加內循環,重複執行寬次(寬是固定值為95),確定Y軸初始座標,不斷增加Y座標的高(高的值取決於成績分佈列表中的數據乘一定的倍數,暫定20),每次增加1便可以完成每段的柱狀圖的繪製。還可以給柱狀圖增添上不同的顏色,容易區分成績所在的範圍。
其實不難發現,在Python中所實現的內容,我們在Scratch中換一種方式也可以實現,不僅僅是柱狀圖,還可以完成折線圖、餅圖、雷達圖等等。只要你有創意和想法,不論用任何編程語言,你都能發揮出真正的本事。