跳到主要內容

改用 Python 顯示3D 學生座位成績表

以前有使用過用 gnuplot 來繪製校務系統的座位成績圖,改用 python 搭配 matplotlib 來繪製新的 3d 圖形

程式碼:
import sys
import numpy as np
import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d import Axes3D
from matplotlib import cm
from matplotlib.ticker import LinearLocator, FormatStrFormatter

with open("grade_data/sm2-1.txt", "r") as f:
    mydata = f.readlines()
x = []
y = []
z = []
for myline in mydata:
    if myline[0] != '#':
        tmp = myline.split()
        x.append(int(tmp[5]))
        y.append(int(tmp[6]))
        z.append(float(tmp[4]))

bottom = np.zeros_like(z)
width = depth = 0.5
fig = plt.figure()
cmap = cm.get_cmap('CMRmap')
max_h = np.max(z)
min_h = np.min(z)
co = [cmap((k - min_h)/max_h) for k in z]
ax = fig.add_subplot(projection='3d')
ax.bar3d(x, y, bottom, width, depth, z, shade=True, color=co)
ax.grid(True)
plt.xlabel("X")
plt.ylabel("Y")
ax.set_title("n = %s , mean = %s, std = %s" %(len(z), round(np.mean(z),2), round(np.std(z), 2)))
plt.show()


留言

這個網誌中的熱門文章

IPv6 系列(五):KEA DHCP SERVER

學校在純 IPv4 的環境時,採用 ISC-DHCP Server 來發放教學區域的私有 IP(10.10.xxx.xxx),並使用閘道 Fortigate 作 NAT 連接到 Internet。 採用 IPv6 後,原本是要使用 ISC-DHCPv6 來作為 IPv6 發放,結果 ISC-DHCPv6 架不起來。不過在查詢 DHCPv6 的過程中,發現 ISC(Internet System Consortium)已開發出下一代的 DHCP Server:Kea Dhcp Server。 Kea Dhcp Server 官網: https://www.isc.org/kea/ 摘錄  https://www.itread01.com/content/1548712273.html  對 Kea DHCP Server 的介紹: Kea DHCP Server 由 Internet Systems Consortium(ISC) 開發的開源 DHCPv4/DHCPv6 伺服器。Kea DHCP Server 是一個高效能的,可擴充套件的DHCP伺服器引擎。通過hooks library可以很容易的修改和擴充套件。 Kea包含的功能元件 keactrl — kea伺服器啟動,停止,配置重置和狀態查詢元件 kea-dhcp4 — DHCPv4伺服器程式,用於響應客戶端的DHCPv4查詢。 kea-dhcp6 — DHCPv6伺服器程式,用於響應客戶端的DHCPv6查詢。 kea-dhcp-ddns — DHCP動態DNS程式.這個程式在DHCP伺服器和DNS伺服器之間扮演者調解者。它接收來自DHCP伺服器域名更新請求和傳送DNS更新訊息給DNS伺服器。也就是說DDNS捕獲使用者每次變化的IP地址,然後將其與域名相對應,這樣其他上網使用者就可以通過域名來進行交流。而最終客戶所要記憶的全部,就是記住動態域名商給予的域名即可,而不用去管他們是如何實現的。 軟體執行環境 加密庫Botan或者OpenSSL log4cplus 1.0.3+ 如果有需要mysql,需要MySQL headers and libraries。可選(postgresql、cassandra類同) 選用 Kea DHCP Server 的原因,...

幾個網頁排版技巧

  1、首行縮排2字元 中文文章會習慣每段的首行縮排2字元 CSS設定:text-indent: 2em 2、利用 Web font loader 動態載入網路字型 JS: <script src="https://ajax.googleapis.com/ajax/libs/webfont/1.6.26/webfont.js"></script> <script>      WebFont.load({           google: {   families: ['Noto Sans TC','Droid Sans'] }   }); </script> 參考資料: 網路字型載入工具  |  Google Fonts  |  Google Developers typekit/webfontloader: Web Font Loader gives you added control when using linked fonts via @font-face. (github.com) 网页字体优化之字体异步加载 | Blog @ GIUEM Web字体载入利器(Web Font Loader)使用详解(Web字体加载缓慢解决办法)_web加载字体_lt_1111的博客-CSDN博客 Web字体载入利器-->Web Font Loader - w3ctech 3、常用CDN jQuery CDN Google Hosted Libraries  |  Google Developers 4、改善字型 render body { -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; font-smoothing: antialiased; }

高機三「全華線上題庫系統」操作說明

機三「機械材料」採用「全華線上題庫系統」作為平時成績,請三年級同學於學期末前完成。 107學年度第二學期 期限:108年4月28日截止(配合職三畢業考提前) 網址: http://52.68.126.252/CHWA_EXAM/student.html#/login 登入方式: 1。先輸入老師的電子郵件:etuser@ms.tsh.ttu.edu.tw,然後按確認 2。選擇班級 輸入個人座號、姓名、密碼(密碼為個人身份證字號) 3。選擇各項考試進行練習。 每項考試均設定成可以重覆練習,系統會取最高分的那一次計算。 考試進行需超過10分鐘才可以交卷