用python排教室_开学季,教你用Python画大学教室座位神分区图!网友直呼“中枪”...
我們上過大學的朋友們都知道,大學沒有固定教室也沒有固定的座位,所以大家可以隨便找個自己喜歡的位置坐下。
別看這些不起眼的座位,感覺沒什么差別。其實,它們可是隱藏著許多小秘密的哦~雖然這些座位,沒有什么差別,但是他們可以反映出你在學校里面屬于學霸還是學渣,一目了然。
網上曾有這樣一張神奇的教室座位分區圖,網友直呼“中槍”!
從“神座位表”中可以看到,一間教室被劃分成了“學霸區”、“妹紙區”、“考神區”、“女神區”、“睡神區”、“LOL隊友區”和“深藏功與名”等十個不同的區域。
一貫作風!就用Python給大家畫這幅有趣的神分區圖,看看是不是跟你的情況一樣呢?
基本思路:我們將畫布分成若干子畫布,這些子畫布構成繪圖區域,在這些繪圖區域上分別繪制圖形,這就讓我們想到函數subplot2grid()的使用方法。
plt.subplot2grid(shape, loc, rowspan=1, colspan=1, fig=None, **kwargs)
通過使用subplot2grid()函數的rowspan 和colspan 參數可以讓子區跨越固定的網格布局的多個行和列,實現不同的子區布局。
值得注意的是,圖形位置的索引起點是從0 開始算起的,而不是像子區函數subplot()中的圖形位置是從1 開始算起的。
比如我們要畫一張講堂圖片,區域大小為(3,3),起始位置為(0,0),跨區域只在行方向延伸3,詳情代碼如下:
import matplotlib.pyplot as plt import matplotlib as mpl mpl.rcParams["font.sans-serif"]=["SimHei"] mpl.rcParams["axes.unicode_minus"]=False plt.subplot2grid((3,3),(0,0),colspan=3) plt.text(0.5,0.5,"講堂",ha="center",fontsize=25) plt.subplot2grid((3,3),(1,1),colspan=1) plt.text(0.5,0.5,"學霸區",ha="center",fontsize=20)
結果圖如下:
理解了函數subplot2grid()基本使用方法后,再回頭看看那張神分布圖,我們可將其區域大小為(6,8),大小是由自己設計,沒有固定??梢来伟凑者t到黨、睡神、深藏功與名等順序,畫每一類所屬的區域。
最終成品如下:
驚不驚喜,意不意外?
關于顏色的填充,可根據自己的喜歡顏色來設計,具體可參考RGB顏色值與十六進制顏色碼轉換工具,鏈接:
https://www.sioe.cn/yingyong/yanse-rgb-16/
文中,還用到函數suptitle()是繪制Figure 畫布標題的文本內容,text()是設置文字說明。在這里主要說說,text語法使用
text(x,y,string,fontsize=15,verticalalignment="top",horizontalalignment="right")參數說明:x,y:表示坐標值上的值string:表示說明文字fontsize:表示字體大小verticalalignment:垂直對齊方式 ,參數:[ ‘center’ | ‘top’ | ‘bottom’ | ‘baseline’ ]horizontalalignment:水平對齊方式 ,參數:[ ‘center’ | ‘right’ | ‘left’ ]
好了,大學里面的教室座位分區用Python畫就是這樣了,哈哈哈,是不是忒簡單,一個subplot2grid()就搞定。
最后,說說關于遲到黨,至于遲到的嘛,沒得挑,就哪兒有空位,自覺補去吧!我可是深有體會呀
另外,做個小調查,你經常會選擇哪個位置坐下來聽課呢?歡迎大家在留言處評論
總結
以上是生活随笔為你收集整理的用python排教室_开学季,教你用Python画大学教室座位神分区图!网友直呼“中枪”...的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: ultraedit 运行的是试用模式_W
- 下一篇: python不同文件函数调用_不同输入文