2018年8月31日 星期五

菁菁上高中

昨天高中開學日, 早上還在下雨, 載二哥去好市多搭校車回來後, 七點馬上又載菁菁去學校. 下午 16:00 請一個小時要載爸去換藥, 順路先去接菁菁, 回家後再去榮總換藥, 民族自由路都塞車, 還好在 17:20 及時到達.

忙碌的八月終於要過去了, 因為時間切割零散, 加上追劇等雜務, 這個月學習進度可說是零. 隨小狐狸們開學, 我也得收起鬆散之玩心, 上緊發條加速學習. 

2018年8月30日 星期四

購買手提式變頻發電機

前兩周因為鄉下突然停電事件讓我重新思考購買汽油發電機之必要, 進行市調後幾經思考, 決定買目前最便宜的宇慶 SF1250W 二行程發電機, 加購一個汽機油 50:1 比例壺 :

宇慶S鋪可刷卡分期日系耐操 發電機STAR 二/四行程 靜音變頻發電機SF1250W $2800
㊣宇慶S舖㊣二行程用 混合油桶 油壺 比例桶/壺 $150


含運費 2800+150+90=3040 元

考量點為 :

  1. 體積小輕量 : 可放在機車踏墊上載運
  2. 只應付照明問題 : 無需 AVR 穩壓功能

參考 :

手提式變頻發電機市調

購買東華 VOCABULARY IN CONTEXT I , II 兩冊

之前在母校高科大看到這兩本交換書, 我覺得給二哥準備學測很好, 但要交換有點麻煩, 在露天剛好找到 1/2 冊合售的, 乾脆用買的算了 :

《VOCABULARY IN CONTEXT I 東華》ISBN:9574933687 一二冊合售398元

含運 450 元.

2018年8月29日 星期三

關於換新冰箱與新手機

這陣子為了換新手機一直在等公司福利社能上架 Zenfone 5Z 上架, 或者 Note 8 再降價, 但 Note 8 外面通信行都已經賣到 21100 元了, 福利社還堅守 23800, 雖然有五大贈品, 但行動電源, 手機支架, 自拍棒這些我都不需要, 差價 2700 根本就把 8000 元福利金吃掉 1/3, 實在不划算.

思考再三, 還不如 Note 8 跟通信行買, 而 8000 元用來換新冰箱, 我那買房時購買的三洋冰箱已運轉逾 20 年, 不符節能省電要求. 我上福利社網站找到東元 R4892XM 節能變頻雙門冰箱 (480 公升), 高*寬*深 mm:1730*728*807 的尺寸剛剛好, 福利社賣 22800, 這價錢難得比外面還便宜, 例如 momo 與家樂福就貴了 100 元 (momo 8/31 前有送鍋子二選一) :

東元R4892XM節能變頻雙門冰箱480公升 (家樂福) $22900
【★好禮二選一★ TECO 東元】480公升 變頻雙門冰箱(R4892XM)  $22900

這樣我只要自付 22800-8000=14800 元, 加上買手機 21100 元共 35900. 若反其道而行買福利社 23800 的 Note8, 則須自付 23800-8000=15800, 加上冰箱 22900 共 38700 元, 差價 2800 元, 也就是 Note 8 差價的部分. 不過要換新冰箱還是等農曆七月過後 (9/10 以後) 再搬為宜.

2018-08-31 補充 :

關於新上市的 Note8 與 Note9 規格差異如下 :

Compare Samsung Galaxy Note 8 vs Samsung Galaxy Note 9

可知 Note9 主要是 S Pen 進化為可遙控照相, 電池從 3300 mAh 進化為 4000 mAh. Android 版本則由 7.1.1 版進化為 8.1 版. 感測器部分 Note8 有指南針, Note9 反而沒有.

Samsung Galaxy Note 9 vs Note 8 - 你該升級嗎?




Galaxy Note 9 Vs Galaxy Note 8: What's The Difference?
Asus Zenfone 5Z vs Samsung Galaxy Note 8 Speed Test !
高性價比國產機皇,ASUS ZenFone 5Z 開箱實測

另外, 冰箱想改買大一點三門的, 福利社賣 27200, 但 PChome/momo/Yahoo 等賣 28900 :

TECO 東元543公升變頻三門冰箱R5552VXLH ( 含基本運送+拆箱定位+回收舊機)

高*寬*深 (mm):1860 *728* 807
但露天可找到 25000 元的 :

TECO東元543公升變頻三門冰箱R5552VXLH

# 256G版/S845處理器★ ASUS ZenFone 5Z ZS620KL (8G/256G)-星芒銀  $18990
ASUS Zenfone 5Z ZS620KL(8G/256G)上市之後,3個不該買的理由

2018年8月28日 星期二

2018 年第 34 周記事

本周已到八月底了, , 8/1 爸去中正骨科換人工髖關節, 每周五傍晚回診, 本周五高雄放豪雨假, 下午雨稍歇載爸去回診, 這次終於可以拆線啦, 其實就是用鑷子將固定外皮的釘針拔除而已. 拆線後還是要包紗布, 但改為每兩天換藥一次, 所以敷藥包就少了 1/3, 藥費也從 1000 元降為 630 元.

這個月常跑醫院, 換髖關節出院後幾天, 爸說他尾椎那邊出現一個疔瘡, 過兩三天就變硬且腫痛, 平躺著睡壓到會痛, 上週一去榮總給外科蔡醫師看, 先吃五天抗生素, 有消腫些, 昨日回診將疔瘡切開擠膿, 並開出一張換藥單每天要去門診換藥. 莫名其妙生瘡, 我有點懷疑是出院那一周回鄉下時, 爸要我將信箱改釘到大門口, 因郵差被大門擋住進不來, 信就丟在曬穀場風吹雨淋. 雖然沒時間去占卜, 但我覺得七月還是不要亂動工比較好.

周一早上請半天還有件事, 秀滿姨的先生因感冒併發肺炎往生了, 爸又不適合去, 所以由我代表去捻香, 還要代表地板廠以及愛心會參加團體公祭. 在那裏偶遇國中時的國文老師, 他向同來的朋友當面讚賞我一番, 讓我不知所措. 當年若不是蕭老師來家裡勸說將學籍轉回去, 人生或許是另一條無法想像的道路. 感謝他強迫全班每天寫日記交給他批改, 要不然就不可能留下四本如今看來妙趣橫生的青少年日記了.

秀滿姨的先生才剛戰勝鼻咽癌, 卻不幸 ... 他為抗癌提早退休才兩年吧! 人生苦短, 為歡幾何啊! 過去只在回憶中, 未來只是個幻想, 我們能把握的只有能感知的現在而已.

意外的豪雨假

今天早上吃早餐時看電視新聞才知高雄市停班停課, 已準備好要上班卻突然放豪雨假, 雖然這個夏天颱風少, 但已放了兩次豪雨假了. 雨已經連續幾天狂下, 到處都淹水, 當然, 政治人物口水也是滿天飛, 早已見怪不怪了, 勝負就看誰的表演藝術比較高明而已, 人民的痛苦事實上只是一種政治博弈的籌碼而已.

手機昨日下班前放在公司忘記帶回來, 還好放在 Galaxy Tab 中的預付卡有設定同振功能, 所以電話還是接得到. 不過昨晚姊姊說打我手機號碼竟然聽到空號, 我想我的華為榮耀 3C 手機的通訊模組又兩光了,一定是莫名其妙又跳出到 SIM 卡密碼輸入畫面所致, 真的該換手機了.

2018年8月27日 星期一

二哥喜歡的 Surface Laptop (i7)

晚上二哥看到我在搜尋 MacBook Air, 問我姊姊去年上大學買的 Acer 筆電多少錢? 我說好像 35000 左右吧! 他說明年他上大學想買筆電, 不要桌電, 可是 Surface Laptop 好像很貴. 找 PChome 果真比雙 A 的貴, 不過他要的是 i7 CPU 的, 8G/256G 這款 :

# Microsoft 微軟Laptop (Core i7/8G/256G/白金) 你的第一台輕薄美型筆電 $46888




他說 3:2 螢幕很自然, 我沒看過也不知道會不會很奇怪.

2018年8月26日 星期日

關於 MacBook Air 筆電

這幾天發現我的 INHON Carbonbook 竟然在未充電狀態, 電池 65% 時螢幕閃幾下就黑掉了, 插上電源重新開機又可正常使用, 判斷經過快四年使用後, 電池已經開始劣化, 要找原廠換電池恐怕已難找, 聽說老闆是頂新第二代出來創業的, 在滅頂風波後受池魚之殃黯然結束筆電事業.

此筆電價廉物美, 2014 年底在客服周小姐協助下以 VIP 價 15900 購入 (省 3000 元), 新機電池續航力約 4.5 小時, 現在大約 3.5 小時. 4GB RAM 搭配 128G SSD 規格跑起來很快, 用來寫程式做實驗綽綽有餘. 只是若還可以換電池, 我想 3000~5000 元跑不掉, 好像並不划算. 而 11.6 吋螢幕雖然輕巧方便攜帶, 但是這年紀看小螢幕漸感吃力, 寧可 14 吋重一點沒關係.

今天在 PChome 看到 Apple 降價 92 折活動, 8G/256G 的 MacBook Air 降 3000 元, 原價 37900 降為 34868 元; 令我蠢蠢欲動 :




MacBook Air 四年前我就想買來替換原先的 ACER Aspire One 小筆電, 最吸引我的主要是它高達 12 小時的超強的電池續航力, 待機可達 30 天, 是所有筆電中數據最真實者, 其他品牌都要打個 6, 7 折左右, 參考 :

7 大品牌筆電測試,僅有 Macbook 續航力「名副其實」!

不過有人認為不要買 Air, 應該買 MacBook 就好, 因為 Air 的螢幕較差 (MacBook 是 Retina, 解析度 2304*1440 vs 1440*900), 但我認為 MacBook 跟我的 INHON (11.6 吋) 一樣都是 12 吋左右的小螢幕, 而且沒有 SDXC 卡槽無法擴充儲存容量, 只有一個 Type C 插槽, 沒有 USB 3 插槽, 電池續航力少了 2 小時 (10 VS 12)價格上又貴 10000 元, 因此 MacBook Air 比較適合, 特別是外出使用時, 電池續航力特別重要. 要說 Air 比不上的地方, 大概是鍵盤沒有背光, 而 MacBook 則有背光 :

比較 Mac 機種
# MacBook vs MacBook Air

不過, 換 MacOS 需花時間熟悉操作, 而且中文注音輸入似乎不是很好用, 參考 :

為什麼 Apple 台灣不重視輸入法問題

總之, 還要再想想換系統的利弊, 最進抽空到燦坤試用看看再決定.

參考 :

說說我用了一年 MACBOOK 的心得
三件買 Mac 前一定要考慮清楚的事
升級新款 MacBook Air?花個千把元換電池更好
電池工廠 batteyr factory (Mr.Battery電池先生)

另外, 除了 MacBook Air 外, ASUS 下面兩款 UltraBook 也可考慮, S406UA 是 ViviBook, UX430UN 則是 Zenbook :

ASUS S406UA 會建議購買嗎
【ASUS 華碩】S406UA 14吋輕薄筆電-星空灰(i5-8250U/8G/256G SSD/W10) $22900
ASUS S406UA 14吋筆電( i5-8250U/256G/8G $22900
# 【ASUS華碩】ZENBOOK UX430UN 14吋筆電-璀璨金(UX430UN-0211D8250U).8/31前限時價↘$29900
# 【 高雄 】 來電享折扣 ASUS UX430UN-0182C8250U 玫瑰金 i5-8250U 512GSSD 華碩 $30500


2018-08-27 補充 :

今天看了下面這篇, 想買 AIR 的火頓時熄了下來 :

不要買 MacBook Air 的理由

但看了下面這篇又活了起來 :

現在MACBOOK AIR還值得買嗎
蘋果傳下半年推低價 MacBook Air

2018-09-02 補充:

購買二手 中古Apple Macbook Air 13吋 須知!二手筆電放心買 MBA MBP Pro參考
關於保固的問題

2018-09-08 補充 :

今天在自由時報看到全國電子 ASUS S410UA 賣 18990, 似乎還不錯, 我查
Acer SF314 (Swift 3) 賣 17900 比 ASUS 更好些 (IPS 螢幕, 指紋辨識) :

[比較] ASUS S406UA vs S410UA
Acer SF314-52-5000 14吋筆電(i5-7200U/4G/128G/藍 $17900
# ACER SF314-52-5000藍 7代Core i5 ∥ 128G SSD ∥ 指紋辨識 $17900
# UDN : ◆快速到貨◆ACER SF314-52 i5-8250U 14吋 FHD 藍色筆電(8G/256G SSD/Win10/SF314-52-5615)  特惠價 24800
9月限定!LINE購物結帳 加碼3% LINE Points
【開學季特賣】送$500禮券+Targus 後背包(送完為止)

UDN 賣的是第 8 代 i5 處理器 (8250U), 而 PCHOME 卻是第七代 (7200U), 還貴 100 元哩! 同款則賣 26900, 貴 2100 元. 欣亞賣 24900 贈品較多也較實用 :
  1. 筆電鍵盤膜
  2. acer 筆記型電腦專屬內袋
  3. acer原廠包包及滑鼠(銀色)
奇展 Buy3C 賣的是 MX150 獨顯款的, 可三期零利率, 但無贈品. 因我主要使用系統為 Windows, 所以有點心動改買 Acer Swift 3 了. 

下午電詢欣亞鄭先生才知 SF314-52 是舊款已停產, 目前推新款 SF314-54, 差別在更輕量 (1.4 KG), 螢幕大小不變仍為 14 吋, 但窄邊框塞入 13 吋機身 :


宏碁 acer SF314-54 藍 14吋/i5-8250U/120G SSD+1TB飆速雙碟版 $22500
9月限定!LINE購物結帳 加碼3% LINE Points【開學季特賣】送$500禮券+後背包(送完為止)◆快速到貨◆ACER SF314-54G i5-8250U 14吋 FHD筆電(4G/256G SSD/MX150 2G/Win10/SF314-54G-51F3/50ZJ/52C6/54A0) $24400
# 宏碁 acer SF314-54G 紅/藍/銀 14吋/i5-8250/MX150 2G/240 SSD+1T 雙碟  $25500
# 欣亞 : acer SF314-54-58J5 甜心粉輕薄筆電/i5-8250U/UMA/4G/256G PCIe/14吋FHD/W10/含acer原廠包包及滑鼠加碼贈品 小米行動電源 2 (5000) / 筆電活動使用 × 1 #22900
【琪琪3C】 ACER SF314-54-560R 銀 i5-8250U/4G/256G PCIE/WIN10 $20500
# 琪琪3C】 ACER SF314-54-58J5 粉 i5-8250U/4G/256G PCIE/WIN10 $20500
【琪琪3C】 ACER SF314-54-57XH 藍 i5-8250U/4G/1TB/WIN10 $19500

想請問各位大大Acer SF314-54G-51F3如何?
  1. 52G的螢幕是玻璃的 會有反光, 54G的螢幕我看的更舒服
  2. 原裝 4G DRAM 美光, 可加威剛 DDR4-2400 8G
  3. 原裝 SSD 為 INTEL 600P
54 沒有獨顯, 54G 才有獨顯. 52G是雙風扇設計, 54G為了擴充性犧牲掉風扇 變成單風扇設計, 如果會長打遊戲 單風扇會撐不住.

【開箱】ACER SF314-54G 輕薄筆電,全新姿態,紅與粉的獨特風格 附改裝1TB硬碟或SSD教學

這兩台最大的差別在於重量 (差了 300g) 和記憶體擴充槽,我會選 54G
https://www.mobile01.com/topicdetail.php?f=232&t=5255062
https://www.mobile01.com/topicdetail.php?f=232&t=5521488

Acer SF514-51-58V1 14吋筆電(i5-7200U/8G/512SSD/福 $24990

參考 :

# 想請問各位大大Acer SF314-54G-51F3如何?
請教關於螢幕FHD IPS面板跟HD+的問題,謝謝!!
請教關於筆電顯卡MX150效能
筆記本領域的GT1030?MX150獨顯到底靠不靠譜?
獨顯筆電真的比較耗電?
續航力的關鍵?
獨顯筆電會不會很耗電阿?
筆電顯示卡內顯好?還是外顯優?
【電腦選購】記憶體的選購建議歐飛:基本4G,建議直接8G
# 女孩筆電抉擇 UX331UAL UX410UF S406UA
極輕極薄效能極好 14吋大螢幕不到1KG 時尚美機 Acer Swift 5 14" 時尚輕薄筆電 開箱評測 ACER SF514-52T Swift 5 8代
ACER Swift3 vs Swift5 兩台比較
# 筆電 Acer swift 3和ASUS UX410 非常兩難的筆電選擇
Acer swift3 sf314-54g續航測試
藤小二 2018年 筆電開箱-宏基 Acer Swift 3, SF314 54G 80RR,14吋,i7-8550U, MX150 2G,8G ,1T+256G,Win 10。(2018/7/19) 
一般文書用途 RAM 要多才少夠用?

好書 : 3 天搞懂財經資訊 :看懂財經新聞.企業財報不求人

這本書自鄉下的市圖分館借來有一段時間了, 因有人預約, 因此周末草草看了一下, 做了一些筆記 (主要是總經與財報部分), 有時間再借回來看. 此書搭配簡圖淺顯易懂, 是了解各類財經新聞詞彙意義與觀念的好書.

3天搞懂財經資訊 :看懂財經新聞.企業財報不求人-找出年年下蛋的金雞母!




摘要如下 :
  1. 政府救市 (GDP 下降) 的兩帖藥方 (工具) :
    (1). 財政政策
    (2). 貨幣政策
  2. 因應景氣趨勢的財政政策 :
    (1). 景氣過熱 : 減少政府財政支出, 增稅降低可支配所得, 降低總需求 (緊縮)
    (2). 景氣低迷 : 擴大政府財政支出, 減稅提高可支配所得, 促進消費刺激總需求 (擴張)
  3. 美國聯儲系統達成貨幣政策的三大工具 :
    (1). 公開市場操作
    (2). 調整重貼現率
    (3). 調整存款準備率
  4. 貼現率 : 客戶拿未到期應收票據到銀行周轉現金, 銀行會扣掉貼現日至到期日之利息後將餘額借給客戶, 其利率稱為貼現率. 
  5. 重貼現率 : 當銀行資金短缺時, 可透過銀行間同業拆款以取得足額之法定準備金, 若同業拆款仍借不到足額資金, 銀行可持承兌匯票或商業本票向央行申請貼現融資, 其利率稱為重貼現率. 央行重貼現率是觀察市場利率走向最好的先行指標 : 理論上央行調降重貼現率表示貨幣政策趨於寬鬆, 欲導引市場利率下降; 反之表示市場資金過多, 央行藉調升重貼現率導引市場利率上升, 但重貼現率僅有宣示央行態度, 對金融市場不一定有實質效果, 因為重貼現率主要影響票據貼現層面, 若持票據向銀行貼現需求不多的話, 重貼現率升降對市場影響就不大. 
  6. 所謂 "降準" 是指調降存款準備率, 這是央行重要的貨幣政策工具. 
  7. 美國聯準會的降息多半是指調降聯邦基金目標利率 Fed Fund Rate, 主要是隔夜拆款利率 Overnight rate (當天起息第二天歸還之銀行同業拆放貸款利率).  
  8. 四大財務報表 :
    (1). 動態 : 權益變動表, 綜合損益表, 現金流量表
    (2). 靜態 : 資產負債表
  9. 基本會計恆等式 : 資產=負債 + 股東權益, 若不成立表示公司資產可能被掏空了. 
  10. 綜合損益表隱含許多決策相關資訊, 公司為何虧損為何賺錢都在此表, 是經營管理層與投資人必須緊盯的報表. 例如 EPS=(稅後淨利-特別股股利)/已發行股數, EPS 創新高若來自業外收益而非本業, 表示這只是短期的獲利表現, 不可貿然投資. 另外營收月增率 MoM 或季增率 QoQ 增加可能只是淡旺季效應, 還要看年增率 YoY 是否也增加. 除營收外, 也要看損益表之毛利率是否持續降低, 這表示營業成本持續攀升, 或產業已步入成熟期, 超額利潤已不多. 
  11. 現金流量來源 :
    (1). 營業活動 : 來自本業之交易損益, 這是現金流量表最重要的部分.
    (2). 投資活動 : 來自處分長短期投資與固定資產之交易損益, 也是掏空資產的線索.
    (3). 融資活動 : 來自向股東籌資, 配發現金股利, 舉債償債, 購買庫藏股等現金流.
  12. 現金流量表是從實際現金收付角度解讀資產負債表與損益表, 需結合此兩表進行整體分析, 了解企業短期內有無足夠現金應付開銷以避免帳面有賺錢, 卻因為資金周轉失靈導致黑字倒閉之可能性. 此情況通常是應收款項飆升, 帳面上賺的錢都是掛在客戶賒帳上, 導致現金流量表看不到來自營業活動之現金流入. 
  13. 從權益變動表可看出公司給股東之待遇如何, 配息率高表示對股東好, 員工分紅配股率高表示對員工好. 此表觀察重點是股本與保留盈餘增減變化. 保留盈餘主要來自損益表之稅後淨利, 公司賺錢賠錢, 配股或配息, 董監酬勞與員工分紅都會影響保留盈餘 

2018年8月24日 星期五

殺蟑利器 : 一點絕

最近家中蟑螂橫行, 已到了大白天公然逛街的地步, 抽空跑了一趟小北買了一管小阿姨教我的殺蟑絕招 : 德國巴斯夫 BASF 一點絕凝膠餌劑, 小北 5 公克的一管 299 元 :




裡面就是一個針筒狀包裝, 只要在廚房客廳各角落不會被寵物或小孩摸到之處擠出米粒般大小凝劑, 小強吃過後會會窩裡去, 死亡後屍體被其他蟑螂吃掉也會中毒, 利用集體中毒現象殲滅小強家族.

好喝的酪梨牛奶布丁

前陣子岳父大人種的酪梨採收交農會, 拿了一些外表不好打下來的回來, 以前我都直接用湯匙舀來吃, 老實說味如嚼蠟不好吃. 近日與同事閒聊時提到酪梨吃法, 都說加布丁與牛奶打成奶昔狀非常好喝. 於是抽空到超市買了鮮奶與統一布丁, 使用隨手杯果汁機酪梨只要半顆, 放入一盒布丁, 鮮奶加到滿, 這樣大概是兩個人的份量.

酪梨營養價值很高, 在食物分類中屬於 "油脂類", 一天吃半個即可, 不可當水果吃, 參考  :

譚敦慈:酪梨美味變身 一天別吃太多

"在營養上,酪梨富含單元不飽和脂肪酸和 Omega3 脂肪酸,可減緩發炎反應,預防糖尿病、心血管疾病。除此之外,酪梨含有膳食纖維和鉀、鎂、葉酸等維生素、礦物質含量也高,可降血壓預防中風。"

2018年8月22日 星期三

好站 : DIY Arduino Flight Controller

今天在 Instructable 看到自製 Arduino 飛控板的文章, 利用 GPS 模組進行無線 PID 調校, 實作方向鎖定與高度停留等功能, 與一般常見飛控板如 NAZA 或 APM 唯一的差別是需要花點時間耐心做 PID 調校, 作者使用藍芽模組而非連接電腦來進行調校. DIY 的好處是價格較便宜, 且能真正了解飛控板如何運作, 也可以加裝額外的感測器. 看完實在令人躍躍欲試, 但目前真的沒時間, 只好先記下來以後有空再玩 :

DIY Arduino Flight Controller





飛控板的主要模組有三個 :
  1. MPU6050 三軸陀螺儀與加速計
  2. BMP180 溫度氣壓感測器
  3. HMC5883L 數位羅盤
作者使用的飛控軟體是開源的 Multiwii, 可用手機下載 EZ-GUI Ground Station 程式透過藍芽設定飛控板.

參考 :

# 飛歐 FlyO 模型店
迷你運輸機C17,小朋友的第一台飛機,無痛學習飛行,三軸陀螺儀穩定好飛 $990
3.7v 300mah 25c 鋰電池(內建電壓保護板),適用F180/jj1000等各種迷你電直、小四軸、小飛機、自製機DIY各種3.7電壓都適用
【飛歐FlyO】買1送1~HUNTER三角翼PNP含電裝,內建飛控,支援SBUS接收機,可高速、穿越、FPV飛行 $2100



追劇之洪武大案

最近過得蠻頹廢的, 花了好幾天在 Youtube 追劇 :




因為我是歷史控, 所以最瘋這種歷史劇了. 這部中國片拍得不錯, 有李立群 (飾朱元璋) 與徐少強 (飾朱亮祖) 兩個台港大咖參演. 朱元璋在我以前的印象中乃是一介武夫, 為了替繼任的太子太孫鞏固皇權, 不惜屠戮功臣; 其政治智慧比起趙匡胤簡直不可以道里計. 但看完此劇覺得雖然朱元璋在臣工眼中是嚴酷的皇帝, 但在百姓眼中卻是為民剪除貪官的好皇帝.

此劇係根據楊馬林所寫長篇小說 "朱元璋懲貪" 改編, 因此所謂大案專指貪瀆之案, 至於胡惟庸, 藍玉等 "謀反" 案則不在敘事之列. 劇中朱元璋倚重的御史鄭士元, 韓宜可皆有其人, 在洪武朝敢言諫諍者實在是很有膽識 :

https://zh.wikipedia.org/wiki/鄭士元
https://zh.wikipedia.org/wiki/韓宜可

此劇包含下面五大案 :

1~5 : 工部員外郎韓鐸貪汙夷三族
6~13 : 秦升彈劾欽差劉玄侵吞賑糧
14~20 : 刑部尚書開濟收賄包庇薛強詐死
21~25 : 誤殺知縣道同朱元璋怒斬朱亮祖
26~35 : 狀元駙馬歐陽倫走私伏誅

其中刑部尚書開濟亦確有其人, 不過揭發他罪行的是御史陶垕仲, 並非劇中的韓宜可.

https://zh.wikipedia.org/wiki/開濟
https://zh.wikipedia.org/wiki/陶垕仲

朱元璋是中國歷史上反貪腐做得最絕最徹底的帝王, 其措施可謂空前絕後, 參見 :

朱元璋反腐

每次大案被揭發, 在嚴刑伺候之餘, 朱元璋總是苦口婆心告誡百官為官應謹小慎微, 不可貪汙, 但貪官仍層出不窮, 道理何在? 有罪臣回說是俸祿低微, 連像樣的宅邸都買不起, 朱元璋表示國力有限無法增加俸祿. 我認為要遏止貪汙, 當然必須提高官員俸祿, 加上嚴刑峻法才有效, 這樣大部分官員就沒有必要涉險, 只有慾壑難填者才無法防堵. 若無豐厚俸祿支撐, 光靠梟首剝皮是沒有用的. 正如安慶公主的駙馬歐陽倫走私茶馬時認為只要趁奉旨巡查陝甘時做一趟就收手, 被發現的機率極低, 這種僥倖心理正是貪汙無法肅清的根本原因.

要供得起官員厚祿的先決條件是 : 充盈國庫與裁汰冗員. 如果公務員團隊太龐大, 再深的口袋遲早都會被掏空, 因此改革的第一步就是保留菁英, 裁汰冗員, 吃皇糧的人少了, 自然就有本錢提高俸祿來留才與養廉. 因此現在許多跨國大企業一旦遇到成長停滯, 挽救措施的第一步通常就是裁員. 我認為好的企業平時就要動態維持業務與用人需求的平衡, 而非不斷招聘人員, 等到營運出現問題才來裁員.

另外狀元駙馬歐陽倫的故事也有啟示, 由於高中狀元, 文章人品又受到安慶公主賞識, 遂拋棄鄉間已訂之婚約, 答應被召為駙馬, 以為雙喜臨門, 殊不知駙馬雖官拜三品都尉, 比翰林院庶吉士 (見習生) 高出許多, 但那只是虛職, 因朱元璋規定駙馬不可實授官職, 歐陽倫空有一身才華卻無法施展, 加上公主府用度浩繁, 俸祿也不高, 於是動起在外開店做生意的念頭. 但玉石布疋生意營利有限, 在奸商慫恿之下幹起殺頭的茶馬生意, 終至身死名裂.

這告訴我們 :
  1. 資訊不對稱會害死人 :
    做任何決定前必須先蒐集足夠資訊, 否則決策錯誤後悔莫及. 歐陽倫就是沒探聽好駙馬不能任官才喜孜孜地迅速答應當駙馬. 
  2. 福無雙至禍不單行 :
    歐陽倫既中狀元又當駙馬, 福已雙至就要小心. 

2018年8月21日 星期二

2018 年第 33 周記事

暑假已近尾聲, 姊姊因為系學會要開會, 週日上台北後就等開學, 所以週六幫她載兩紙箱的學生包裹到郵局去寄. 因為時間不湊巧, 這個暑假姊姊都沒時間回鄉下.

爸換髖關節週五原本要拆線, 但傷口下端還有些紅腫, 醫生說下周再拆. 由於中午很多人可能吃飯等原因沒到, 下午看診進度突然大躍進, 一下子跳 10 號, 20 號, 我兩點多看才 160 號, 半小時後已跳至 200 號, 趕緊請兩小時假回去, 到醫院時已過 20 號了. 下周可能要請下午的假.

上週在等紅燈時看到旁邊一個騎士腳踏板放著一桶植物, 好似同事給我種的優頓草, 但一時忘了名稱, 就冒昧請問, 那人說此草葉子對癌症有效. 回公司後跟同事提到此事, 她要我回鄉下時幫她帶一些回來, 但週日前往菜園採摘, 卻發現被砍掉了, 原來是長太長, 前陣子被爸砍除. 所幸此草生命力極強, 砍倒在地的莖竟然重新長根活過來了, 應該很快就會茂盛起來.

週六將高雄拆下來的舊吊扇帶回鄉下拆解, 但拆到燈具與吊扇相接的杯狀套筒時就遇到問題了, 裡面一顆六角螺帽無法拆下來, 因外面杯狀套筒阻擋, 用活動板手去轉時無法施力, 可能要找特殊工具才行.




週六下午原本想跟爸去牛將吃牛肉麵再回家, 但出發時接到小舅媽電話, 要我晚上別煮, 載爸過去舅舅家吃晚飯. 回家時還把周日午晚餐都幫我打包好帶回, 真是感謝! 以後鄉下就是我們四個人相扶持啦!

2018年8月15日 星期三

好站 : 吊扇改裝的垂直式風力發電機

昨天 8/14 下午特力屋的師傅來家裡安裝上周五購買的 52 吋吊扇, 他還幫我把舊吊扇的扇葉一一拆下, 比較不占位置. 舊吊扇很久以前遙控器由不靈敏變成無感, 這購自大樂的吊扇最後只剩燈具功能而已. 馬達應該是好的, 可以改裝成風力發電機. 我在 Youtube 看到有人將老舊淘汰的吊扇改裝成垂直式風力發電機, 需要拆機後在機殼內側黏上銣鐵磁鐵, 參考 :

# 將吊扇改裝成垂直式風力 DIY




由於吊扇為交流感應馬達, 轉動轉子無法發電 (無磁場), 因此需要強力銣鐵磁鐵產生磁場. 此吊扇拆開後轉子上有 16 捲線圈, 因此必須準備 16 個長 30mm 寬 20mm 厚 5mm 的磁鐵片, 先用膠帶固定在機殼內側, 再用固化劑將其穩固地黏在內壁上, 最後裝上垂直式風扇即大功告成.

現成的垂直式風力發電機價格不便宜, 例如 :

200W 12V / 24V 風力發電機 燈籠風機 風光互補 (有結構圖) $7600

下面影片也是自製垂直式風機 :

垂直軸風力發電機DIY




下面這個是 500W 的垂直式風機 :

500 watt VAWT




下面這個更具巧思, 利用 6 個風機帶動連桿驅動下方的發電機 :

6 wind turbine eixo vertical 1 generator




葉片的設計牽涉複雜的流體力學原理, 但 DIY 的創客可以不管理論計算, 就地取材直接製作, 例如下面影片就是利用兩個水桶製作葉片 :

How to Make an Inexpensive Vertical Wind Turbine - Part 1
How to Make an Inexpensive Vertical Wind Turbine - Part 2





下面這個則是使用自行車輪圈來製作風機 :

High Speed Vertical Axis Wind Turbine EVER MADE!!




真是太有創意了!  參考 :

風力-發電實驗組(垂直式/5.5V/DIY)--*2017新款* 180
風力發電系統設計
垂直軸風力發電機--約100w正式葉片款-陽台/平地兩用(底座需另購)
風力發電機(200w)3葉-我家用電不用錢-裝在陽台就能用

白天用電 5 度的節電方案

最近電費調漲聲起, 炎夏充沛的太陽能卻只能眼睜睜地看著它流逝真是可惜. 今天又上網去做太陽能板市調, 找到下面這個賣家的併網套裝組合 :

全新庫存 單晶太陽能板 260~265W (單片只要3600元) 套裝組合10800元起

其中 19800 套裝組合為 260W*4=1040 W, 含 110V/220V 1.2KW 並網機一台, 日發電量約 5 度, 估計蠻適合鄉下家裡目前白天用電量. 賣家表示目前出貨都是配 220v 併網機, 只要將輸出插入冷氣的 220V 插座即可, 其電能會分散到兩個 110V 迴路上.

另外還有一個賣家也是 1KW 左右的方案, 使用友達 325W 能板, 因此只要三塊板子, 所配併網機是比較大的 3KW, 擴充性比較大, 但價格貴了 8000 元左右 :

1000W套餐]科風太陽能併網型電力調節器3000W逆變器(台灣製造五年保固) + 325W友達超高效太陽能板X3 $28000

參考 :

談談逆變器
表燈非時間電價試算 (期間兩個月)

2018年8月14日 星期二

好站 : 查詢本周是第幾周

最近因為忘記寫周記, 方才注意到第幾周的序號有時候自己會搞混, 便上網找到下面這個網站來校正, 還蠻好用的 :

http://www.adia.cc/thisweek.php

要定期利用此網站來檢查周記序號是否重複或弄錯.

2018 年第 32 周記事

本周六姊姊自台北回高雄, 但下周又要上台北開會, 開學將近, 我建議她上去就等開學好了, 不用跑來跑去, 車費也不便宜.

週五載爸去中正骨科回診, 258 號大約七點半看到, 我跟吳院長說前天右下肢有水腫情形但今天又見消了, 他說手術後循環會較差些沒關係. 下周五回診要拆線, 掛 217 號, 可能要早一點出發. 本周每日換藥, 傷口已漸漸收合, 爸說走起來僅感覺傷口還有些微痛, 恢復情形良好, 昨晚兩人還走到 JIT 去理髮.

周日高師大碩士班語言學組同學於美綠聚餐, 並邀請鍾老師與師母同來相聚, 自 2004 年畢業離校起已 14 年矣! 帥哥上元與我已變銀髮族, 但思恩, 志光與老師似乎都沒變哩! 因為天氣太熱, 吃過飯後帶大夥兒去魔法阿嬤吃冰. 散會後老師還到我家暢談了近一小時.


2018年8月13日 星期一

手提式變頻發電機市調

昨天本來預計六點要回高雄, 但五點半在煮晚餐時卻突然停電, 而且跟以前一樣只有我們這條饋線停電, 對面張家夥房依舊燈火通明, 打電話詢問台電答案是有故障正在查修, 一直到七點過後才來電. 沒電鐵門放不下來, 真是傷腦筋. 這也迫使我認真思考備用電力問題. 但現在太陽能板安裝問題還沒準備好, 為了應急只好考慮汽油發電機.

在露天找到最便宜的是宇慶賣的這款 SF1250 :

宇慶S鋪可刷卡分期日系耐操 發電機STAR 二/四行程 靜音變頻發電機SF1250W $2800

此款為二行程汽油引擎, 使用 92/95 汽油與二行程機油以 50:1 比例混合, 油箱容量 4 公升, 可運轉 280 分鐘 (約 4.7 小時), 混合汽機油最好使用專用油壺, 不要用 PVC 材質的水桶代替, 否則久了 PVC 會融入油中使油路阻塞, 參考 :

㊣宇慶S舖㊣二行程用 混合油桶 油壺 比例桶/壺 $150

發電機操作方式參考下列視頻 :

SF1250二行程發電機




我還找到一台是 ELEMAX 2000W, 但價格太貴了 :

【高雄 W五金】附發票*免運《日本製造》ELEMAX澤藤 HONDA引擎 2000W $23500

另外在 "想要採購 汽油發電機 與 空壓機 的相關問題~" 看到本田 GS-3200 評價甚好 :

【 阿原水電倉庫 】HONDA 本田 GS-3200 引擎發電機 3200W 四行程引擎發電機 5.5HP 汽油發電機 $17200

日系發電機品質似乎都不錯, GS-3200 輸出 3.2KW 很夠用, 各種電動工具如空壓機, 電鑽都可應付裕如. 但我主要是解決 4~5 小時的臨時停電照明問題 (主要是傍晚 5~10 點之間), 所以不用買這麼大容量的發電機, 1KW 以內就夠了.

2018-08-27 補充 :

今天找到下面這款四行程 CP3300, 110V/220V, 2.8KW 有 AVR, 但重達 43KW, 載運不方便 :

阿元的店~* 全新品CP3300瓦發電機 $8300+200/300
賣全新CP3300四行程發電機 $9000 免運 (有規格)

其實我只要能解決停電照明問題而已, 好像沒必要買這麼重這麼大的機器吧?

另一款是宇慶的變頻靜音款 2.2KW, 但是太貴了, 加油還要拆蓋子太麻煩 :

# 可刷卡 輕量化靜音款 外銷日本ASAHI 靜音變頻式 SE2200W 防音型靜音發電機 電腦液晶.電漿螢幕 $13000+90

2018-08-29 補充 :

今天又找到有 AVR 的機器, 店家周一至周五可在高雄博愛路綏遠二街交叉口 R12 捷運出口後驛站4號出口面交 :

黑手專賣店 附AVR穩壓器 台灣品牌 黑馬牌 1200W 四行程發電機 引擎式發電機 汽油發電機 夜市 登山露營 餐車 (25KG) $6900
黑手專賣店 附AVR穩壓器 台灣品牌 黑馬牌 3300W 四行程發電機 引擎式發電機 汽油發電機 夜市 廟會 餐車 露營 (41KG) $8950

好站 : 自製 CNC 保麗龍切割器

今天在 Youtube 看到下面這個 CNC 保麗龍切割器, 可以剪裁出尺寸精確的模型, 例如製作保麗龍機翼 :

How to build a CNC Foam Cutter




作者使用稱為 Mach 3 的免費軟體, 不過現在已升為第 4 版, 參考 :

http://www.machsupport.com

2018年8月12日 星期日

2018 年第 31 周記事 (補)

今天要寫周記才發現上周忘了寫, 故補之.

本周 7/31~8/7 請假陪爸去中正骨科做右髖關節手術, 都住在醫院裡. 7/31 下午辦住院, 8/1 早上進行微創手術, 從 9:30~12:30 約三小時順利完成. 住院一周 8/7 下午辦出院, 目前已可正常走路, 但仍需持助行器以策安全.

2018年8月10日 星期五

好書 : 人工智慧能發展到甚麼地步?

此書是我在市圖搜尋 AI 相關資料時找到的, 是日本東京大學 AI 專家松尾豐與企業家鹽野誠關於人工智慧未來發展的討論, 屬於 AI 科普作品, 全書以對談形式呈現, 故結構與主題比較鬆散, 重點不太好抓.




以下是閱讀札記 :
  1. 人工智慧未來將如何改變人類? 這有兩種可能 :
    (1). 重要的工作交給電腦, 只留下系統設計工作給少數人.
    (2). 固定且自動化的工作交給電腦, 人類則處理如醫生顧問等需要人際接觸之工作.
    第一種可能宛如希臘時代的市民與奴隸, 哲學與思想屬於市民, 勞動則由奴隸來做. AI 時代人類應該做有未來性的事, 例如數據分析.
  2. AI 在預測領域中世人以股價與景氣為主進行各種預測. 深度學習有個面向是製作新的變數, 如果有有大數據就可以在海量資料中找出人類無法發現的模式, 提高預測精準度. 
  3. 預測其實並非尋找因果關係, 而是關關係, 即兩個變數之間是否存在關係. 確切的因果關係是很難捕捉的.
  4. 人工智慧原本就是在思考如何以知識來表現這個世界的學問. 
  5. 以人工智慧預測股市的升降, 首先要掌握與股價預測相關的所有想得到的變數, 無關的變數捨棄也無妨.
  6. 人工智慧的預測方法與人類的做法不同, 主要差別在計算能力上. 人類需要理解才能判斷, 但人工智慧不必理解只做辨識. 
  7. 影響股市的資訊對市場參與者而言乃是非對稱的, 所以不是一個完全效率市場. 電腦擅長在不完全效率市場中快速掌握價格差, 將其填補起來, 即所謂的高頻交易套利手法. 套利是一種利用價格差或利差交易來獲利之行為. 
  8. 世界上最賺錢且持續獲利的對沖基金是 James Simons 文藝復興科技公司, 該公司使用演算法進行交易, 其員工並非取得金融或 MBA 學位者, 而是清一色數學家與物理學家. 
  9. 在投資中取勝基本上是要找出資訊的非對稱性, 以演算法不斷發現這種 "市場的好地方", 並藉由資訊優勢比他人早一步獲得利益. 電腦在尋找與辨識非對稱性的工作中有遠超人類生理辨識的優越性. 
  10. 經濟預測需同時考量政治, 經濟, 社會, 文化, 技術, 這完全是人類的強項. 
  11. PDCA 循環 : 為圓滿達成目標, 以循環方式執行 Plan, Do, Check, 四步驟.
  12. 所謂自我意識, 是憑自己就能控制變數的這種感覺. 
  13. 量子現象雖是機率性的, 但把它想成按照決定論運作亦可, 一旦當前 t 的狀態決定了, 下一個時間 t+1 的狀態也跟著決定了. 所謂帶有意志的現象, 是指有某個能夠表現意志的變數存在, 因為它, 接著的未來就起了變化. 
  14. 當製作人工智慧時, 在把自己本身當作變數處理的結構中, 也許可以產生像意志那種東西吧! 
  15. 人類出生後會逐漸浮現自我, 產生像 "自己能控制的到這裡為止, 除此之外也許就是外部" 這樣的認識. 能否控制對意識的形成是非常重要的, 例如拿拐杖的人拿久了, 或許會把枴杖當成是身體的一部份. 
  16. 現在的自己, 很有可能是一瞬間之前被殺的東西的拷貝. 
  17. 海豚與人類最大的差異是, 不論海豚寫下甚麼都會消失無蹤. 文字對人類文明做出巨大貢獻. 
  18. Internet 是以美國國防部 DARPA 網路為藍本發展的, 其原始概念是網路遭受核武攻擊時, 能夠以封包先將資料分散出去後再收回來恢復原有資料. 
  19. 語意網是一種將網頁上的資訊以有意義的方式記述, 因此能做更聰明的處理, 始於 1990 年代末期, 但因意義難以記述而無法迅速擴展.
  20. 在深度學習也有決定系統本身舉動的所謂超參數 (hyper-parameter), 此重要的參數事人類賦予的結構, 但或許可隨著進化而逐漸決定. 
  21. 漢字之類的表意文字, 它的功能非常優異, 包含了視覺性的意義, 能夠看著整頁來讀, 速讀也是可能的. 而英語這種表音文字語言, 不能讀太快.
  22. 人工智慧是將結構性, 非結構性的散亂資訊加以分門別類, 然後找出哪個是變數, 哪個是前提條件, 成為分析的基本.
  23. 所謂現狀的模型化是藉著經驗的轉移, 可以從非常少的樣本中看出下一刻說不定將發生某種事情. 如果模式數量少, 推論的力道就弱. 

2018年8月9日 星期四

去特力屋買吊扇

晚上與菁菁, 水某三人去特力屋挑選吊扇, 因為舊的吊扇已經十幾年沒功用, 只剩照明功能, 而天氣越來越炎熱, 客廳光靠一支立扇涵蓋面不夠, 趁爸出院後在此休養乾脆換新扇. 原本看中一支 60 吋有遙控含燈具的, 價格為 6390, 正要結帳時菁菁又看到更便宜特價 3990 的, 款式也喜歡, 只是無遙控, 尺寸較小 52 吋, 但想想有遙控內部線路較多較麻煩, 還是買簡單一點的好了. 結帳時打出來竟然是 2495 元, 我問不是標特價 3990 嗎? 店員說以電腦為準, 因要打烊所以就不研究為什麼又更便宜了.

關於歡樂看收費標準

最近在 MOD 上廣告打很兇的歡樂看機上盒訴求內容完全合法, 看影片不會卡卡, 上網查了其付費方案, 續訂收視月繳基本上是 240 元, 這似乎是跟 MOD 搶生意不是嗎?

1.月收視費:1個月收視費$240元
2.季收視費:3個月收視費$720元
3.半年收視費:6個月+免費送1個月$1440元

參考 :

http://www.faintv.tv/?page_id=182

2018年8月6日 星期一

107-1 學期註冊

早上二哥來病房讀書, 我得空去幫他與菁菁註冊 (107 學年度第一學期).

二哥 (高三上) : 學雜費 12333
菁菁 (高一上) : 學雜費 12125 + 營養午餐 5346 +  代收費 1980 (班費, 社團, 工具, 器材) + 代收費 4500 (課輔, 材料等) =23951

合計 36284

姊姊師大的註冊單還沒下來.

2018年8月5日 星期日

夢想改造家的鬼斧神工

今天在龍華電視台看到夢想改造家節目介紹設計師陳彬如何將中國武漢市漢潤里老城區的一個老舊屋子改造成夢幻住居, 實在令人讚嘆設計師的巧思啊! 不僅解決了老中青三代母女的生活不便問題 (擁擠, 雜亂, 衛生, 與老人照顧), 也讓公共區域煥然一新, 室內設計師果然是環境改造的魔術師哩!

梦想改造家之样板房(五)武汉“汉润里”老宅改造正惊四座




不過這影片只是後半部完成後祖孫三人驚呼的部分, 要看前半部改裝前的簡陋不便模樣才能明白屋主為何說有了這新裝潢此生足以, 再活 500 年都不嫌多了!

總花費約 30 萬人民幣也不貴, 不過更引起我興趣的是, 設計師在綠化公共區域時還特地利用收集的雨水設計了一套自動澆灌系統, 真的很吸睛, 這正是我一直想做卻沒時間做的事啊! 只要兩天忘了給陽台植栽澆水, 下班回來就會萎靡不堪, 看了這節目後又讓我手癢了.

台灣生技股的投資眉角

過去我對生技股敬謝不敏, 因不符我的投資觀念, 但本期 1601 商周有一篇 "每年夏天台灣生技熱你該懂的投資眉角" 讓我對陌生的生技股有了一番新認識, 大致摘要如下 :
  1. 每年 6~7 月台灣生技展前, 生技股總能吸引資金進駐, 幾乎成了行情的精準指標. 自 2015 年以來, 展前一周成交比重漲幅 14.5%~19%.
  2. 投資生技股門檻比投資電子股高, 因為電子股有產業鏈上下游可交互比對業績, 而生技公司往往各自獨立, 投資研究難度大增.
  3. 生技股與電子製造業之三大不同 :
    (1). 與國際指數無連動
    (2). 由內資盤主導
    (3). 次族群龍頭股為操盤指標
  4. 台灣生技股與國際指數無連動, 走向與美國生技指數 NBI 或陸港等市場生技股沒有連動性. 因 NBI 主要為純新藥與製藥類股, 而台灣生技股涵蓋範圍廣, 包含 :
    (1). 新藥 : 中裕
    (2). 保健食品 : 大江, 葡萄王
    (3). 藥局與醫美通路 : 麗豐, 佐登
    (4). 醫材 : 泰博, 邦特, 鐿鈦
    (5). 隱形眼鏡 : 精華, 金可, 晶碩
  5. 台灣生技股資本額與市值都小, 外資持股比重不高, 主要由市場主力與公司派主導, 投信次之的內資盤主導, 股性相當活潑. 每當生技行情出現時, 往往是同一套資金在不同次族群進出, 形成明顯的輪漲現象. 主力色彩濃厚波動大, 連投信法人也是波段操作, 較少長期投資.
  6.  生技股內資金主何時發動漲勢可從龍頭股看出來, 從龍頭股表現可知資金輪動到哪個次族群. 
  7. 每年生技展是新聞焦點, 也是內資拉一波行情的舞台, 但為期不長, 往往生技展結束甚至一開展, 行情便結束. 展後行情發展要看成交比重, 若維持展前高比重則可持續, 若下滑應馬上出場. 要等到八月上旬第二季財報公布才有可能出現反彈. 
  8. 操作生技股最簡單的做法是追蹤投信籌碼, 投信一買多就上車, 籌碼一鬆動先逃就對了.
  9. 比起製藥股來說, 大多醫材股更向電子股, 不須臨床試驗, 重視的是訂單量, 價格與毛利率, 但電子代工是毛利率 3~5%, 醫材股毛利率卻動輒 30% 以上, 屬於高毛利, 營收獲利都較穩健的族群.
  10. 血糖機業者中營收市值最高的市泰博, 血糖機是負毛利產品 (-3%~-5%), 獲利來源主要是耗材的試片. 血糖機毛利低, 營收衝高不代表獲利高, 故看每月收不准, 檢視每技財報即可. 
  11. 醫材含金量僅次於新藥, 因部分醫材須取得執照才能上市.
  12. 投資醫美通路族群除了關心展店數外, 還需盯緊每月營收變化.
其實不管是投資哪一族群, 都要做足功課謹慎選股, 持續追蹤持股體質變化 (大股東持股 + 每月營收 + 季報績效) 才算合格投資人. 習慣射後不理的人絕對不適合投資, 也不適合買彩券 (中大獎都不知道).

參考 :

2018 黑馬夯產業!其中「1 檔」龍頭股:五年來成長 32.2%、現在還自創品牌壟斷市場

購買浴室安全扶手

因應爸週二出院後在高雄休養需要, 浴室牆壁必須安裝扶手, 在露天找到下面這款, 價格比其他廠家貴, 但看說明扶手與基座是直接焊的, 不是用單根螺絲鎖的, 而且基座是用三顆地虎鎖在牆上, 不是一般傳統塞塑膠墊再鎖螺絲那種, 所以應該比較穩固.
  1.  ☆水電材料王☆台灣製 高安規 304 不銹鋼扶手。30 cm L型扶手。C型扶手。無障礙空間。浴室扶手 廁所扶手。  (無奈米抗菌包材款) $280
  2. ☆水電材料王☆厚管 台灣專利品 W30 C型抗菌扶手 30cm 高安規 304 不銹鋼扶手 奈米抗菌包材 $540 
考慮美觀與抗菌, 最後是買第二項有奈米抗菌包材這款, 30cm 以下的才能超商取貨 (30cm 其實應該就夠用了), 含運 600 元. 不過電鑽放在鄉下, 因此週二出院後要回鄉下一趟才能施工.

2018年8月4日 星期六

購買葉黃素膠囊 (二)

上回買給小狐狸們的葉黃素吃完了, 今天上雅虎康是美商城訂購三瓶, 原價 1680*3=5040, 三瓶一組特價 3780,  折扣後為 3321, 平均一瓶 1107, 比之前兩次還要便宜.

悠康 愛見康晶透亮光彩禮讚【康是美】 $3780



參考 :

購買葉黃素膠囊
代購悠康愛健康葉黃素

2018年8月3日 星期五

D3.js 學習筆記 (一) : 基本用法

上週去母校高科大圖書館還書, 館員看到我的校友借書證 7/31 日到期, 就幫我延長一年, 同時透露學校有計畫要推出新校友卡, 採使用者付費制, 也就是免費借書時代即將過去, 所以這次書借回來就有急迫感而認真在看了.

這次借到一本 D3.js 的書 :

# D3.js 數據可視化實戰手冊 (人民郵電出版, 楊銳等譯)




此書其實是譯自 Nick Qi Zhu 寫的 "Data Visualization with D3.js Cookbook (Packt, 2013)", 原版目前已經出到第二版了 :




作者 Nick Qi Zhu 是第一個 AI 輔助購物網站 Yroo.com 的創辦人與技術長, 曾任職美國伊利諾州 ThoughtWorks 公司資深程式設計師, 也是 dc.js 框架 (基於 D3.js) 的作者. 書中範例檔案可從下列網站下載 :

https://github.com/NickQiZhu/d3-cookbook
https://github.com/NickQiZhu/d3-cookbook-v2

除了上面這本外, 事實上 D3.js 的書籍還蠻多的 (可見其重要性與受歡迎程度), 網路書店還可找到如下幾本好書 :
  1. 網頁互動式資料視覺化 : 使用 D3 (歐萊禮)
  2. Interactive Data Visualization for the Web (Oreilly)
  3. Learning D3.js 5 Mapping (Packt)
  4. D3.js in Action: Data visualization with JavaScript (Manning)
  5. Learning d3.js Data Visualization  (Packt)
  6. D3.js Cutting-edge Data Visualization (Packt)
  7. Practical D3.js (Apress)
  8. Begining JavaScript Charts (Apress)
其中 "Begining JavaScript Charts" 這本的第五章介紹 D3.js 簡易淺顯, 非常適合入門者無痛學習.

D3.js 是一個用來在網頁上動態顯示資料圖形的前端 Javascript 框架, 具有輕量級與簡單易用的特性, 它利用 HTML, CSS, 以及 SVG 技術使數據的形象以圖表方式鮮活地表現於網頁上, D3.js 稱其為數據驅動文件 (Data-Driven Documents) 技術, 故名為 D3, 意即可透過數據來操作文件.

D3.js 是目前最受歡迎的開源資料視覺化 (Data Visualization) 技術, 採用 BSD 開源授權, 它提供功能強大的可視化物件讓使用者可以用數據驅動的方式去操作 DOM. 在 ThoughtWorks 公司自 2010 年起每年發布的技術潮流走向觀察報告 "技術雷達" 中, D3.js 是瞬息萬變的技術趨勢中的長青樹.

D3.js 源自 Portovis 框架, 這是史丹福大學博士生 Mike Bostock 所開發的一套資料視覺化工具, 他在 2010 年於 IEEE InfoVis 發表了 "Declarative Language Design for Interactive Visualization" 的論文, 成為他後來於 2011 年設計 D3.js 的基礎, 參考 :

https://zh.wikipedia.org/wiki/D3.js

D3.js 目前最新版為 v5.5.0 版, 可在官網下載 d3.zip :

https://d3js.org/

解壓縮後將其中的 d3.js (約 484KB) 或壓縮版的 d3.min.js (約 232KB) 嵌入到網頁中 的 script 標籤中即可 (屬性 type="text/javascript" 不需要, 因為 Javascript 已獨霸天下), 例如 :

<script src="js/d3.js"></script>

或壓縮版 :

<script src="js/d3.min.js"></script> 

也可以使用 D3 官網提供的 CDN (注意, 檔名有版本), 例如 :

<script src="https://d3js.org/d3.v5.js"></script> 

或壓縮版 :

<script src="https://d3js.org/d3.v5.min.js"></script>    

範例網頁模板如下 :

<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8">
    <title>The Power of D3.js</title>
    <script src="https://d3js.org/d3.v5.min.js"></script>
    <style>
      <!-- CSS style here -->
    </style>
  </head>
  <body>
    <!-- Web content -->
  </body>
  <script type="text/javascript">
    <!-- Script using d3 objects -->
  </script>
</html>

注意, D3.js 程式碼使用了 UTF-8 字元集, 因此在網頁中必須在 head/meta 標籤中指定 charset 為 utf-8, 否則 D3.js 的效果將不會出現甚至發生錯誤; 但若使用 d3.min.js 則不需要. 其次, D3.js 的 script 必須放在 head 內, 而執行 D3 指令的 script 則放在 body 內, 總之 D3.js 必須先下載至網頁內才行.

D3.js 的最上層物件名為 d3, 其用法跟 jQuery 類似, 先呼叫 select() 或 selectAll() 方法選取網頁中的元素後, 再利用一連串的修飾函數 (modifier function) 去操作元素, 例如添加或修飾內容與屬性等. 總之, 選擇元素 (Selection) 在 D3.js 中是最核心的操作, 主要是透過下列的 CSS 選擇器選取方式 :
  1. 元素名稱 (Tag name)
  2. 元素 id 屬性
  3. 元素 class 屬性
  4. 偽類選擇器 (Pseudo-selector)
D3.js 用來選擇網頁元素的函數有兩個 :
  1. d3.select() : 選取第一個指定的元素
  2. d3.selectAll() : 選取所有指定的元素
這兩個函數的傳入參數是字串, 可以傳入 tag name (如 a, p, div 等), id (以 # 開頭), 或 class (以 . 開頭) 等參數來選取網頁元素, 例如傳入 "p" 表示選取 p 元素, 傳入 "#p1" 表示選取 id 為 p1 的元素; 傳入 ".class1" 表示選取樣式類別為 class1 的元素. 也可以將多個標的以 AND 或 OR 方式選取, 例如 ".class1.class2" 表示選取具有 class1 與 class2 兩種樣式類別之元素 (AND); 而 ".class1, .class2" 則是選取具有 class1 或 class2 任一種樣式類別之元素.

選取函數的傳回值為物件 (object), 包含一個或多個元素之陣列. 注意, 即使網頁中有多個符合選取條件之元素, 函數 select() 只會傳回其中的第一個 (只有一個元素的陣列), 而 selectAll() 則傳回全部符合之元素物件之陣列, 例如 :

 測試 1  :  https://tony1966.000webhostapp.com/test/D3/d3_select.htm

<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8">
    <title>The Power of D3.js</title>
    <script src="https://d3js.org/d3.v5.min.js"></script>
  </head>
  <body>
    <p name='p1'>這是 p1</p>
    <p name='p2'>這是 p2</p>
  </body>
  <script>
    var sel=d3.select('p');
    console.log(sel);
  </script>
</html>

在 Chrome 瀏覽器中按 F12, 選取 Console 頁籤可看到在 _group 的 0 屬性值是一個只有一個 p 元素的陣列 :




但是如果改用 selectAll() 的話, 就變成有兩個 p 元素的陣列了, 例如 :

測試 2  :  https://tony1966.000webhostapp.com/test/D3/d3_selectAll.htm

<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8">
    <title>The Power of D3.js</title>
    <script src="https://d3js.org/d3.v5.min.js"></script>
  </head>
  <body>
    <p name='p1'>這是 p1</p>
    <p name='p2'>這是 p2</p>
  </body>
  <script>
    var sel=d3.selectAll('p');
    console.log(sel);
  </script>
</html>

結果如下 :




呼叫 select() 或 selectAll() 取得元素物件後, 可以用 D3.js 所提供的操作函數 (operator) 來操作元素, D3.js 提供如下操作函數 :
  1. text() : 操作元素的文本內容 (=innerText)
  2. html() : 操作元素的網頁內容 (=innerHTML)
  3. attr() : 操作元素屬性
  4. style() : 操作元素的樣式
  5. append() : 在目前元素的最後一個子元素後面新增元素
  6. insert() : 在目前元素內插入新元素
注意, append() 與 insert() 只是新增空的標籤而已, 必須再呼叫 text() 或 html() 加入內容才看得到. 下面的測試利用 text() 修改 p 元素的文本內容, 在網頁上曬出 "Hello World!" 招呼語 :

測試 3  :  https://tony1966.000webhostapp.com/test/D3/d3_hello_world.htm

<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8">
    <title>The Power of D3.js</title>
    <script src="https://d3js.org/d3.v5.min.js"></script>
  </head>
  <body>
    <p id="hello"></p>
  </body>
  <script>
    d3.select('#hello')
      .text('Hello World!');
  </script>
</html>

此範例先在網頁中放置一個 id 為 hello 的無內容 p 段落標籤, 然後呼叫 d3.select() 取得此元素物件, 再呼叫其 text() 方法設定 p 元素的文字內容為 'Hello World!'. 這種連續呼叫物件函數的方式跟 jQuery 的做法是一樣的, 稱為 function chaining.

操作函數 text() 只能修改元素的純文字內容, 如果要修改內部 HTML 內容須呼叫 html() 函數, 例如 :

測試 4  :  https://tony1966.000webhostapp.com/test/D3/d3_html.htm

<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8">
    <title>The Power of D3.js</title>
    <script src="https://d3js.org/d3.v5.min.js"></script>
  </head>
  <body>
    <p name='p1'>這是 p1</p>
    <p name='p2'>這是 p2</p>
  </body>
  <script>
    var sel=d3.select('p');
    sel.html("<i>Hello World!</i>");
  </script>
</html>

此網頁中的兩個 p 元素用 select() 選取時只會傳回第一個 p 元素物件, 呼叫 html() 將其 innerHTML 內容改為斜體之 "Hello World!", 執行結果如下 :

Hello World!
這是 p2

元素 p2 內容不受影響, 可見 select() 只會傳回第一個符合之元素, 因此 呼叫 html() 的效果只作用於 p1 元素上. 如果要將改變套用到全部符合之元素必須用 selectAll() 選取, 例如 :

測試 5  :  https://tony1966.000webhostapp.com/test/D3/d3_html_selectAll.htm

<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8">
    <title>The Power of D3.js</title>
    <script src="https://d3js.org/d3.v5.min.js"></script>
  </head>
  <body>
    <p name='p1'>這是 p1</p>
    <p name='p2'>這是 p2</p>
  </body>
  <script>
    var sel=d3.selectAll('p');
    sel.html("<i>Hello World!</i>");
  </script>
</html>

執行結果如下 :

Hello World!
Hello World!

可見兩個 p 元素原本的文本內容 "這是 px" 都被改成 "Hello World!" 了!

上面範例中 D3.js 元素物件的 text() 或 html() 方法只有一個可能的參數, 有傳參數進去時為 setter 方法; 沒有傳參數為 getter 方法. 但在 attr() 這種有兩個可能參數的方法來說, 則是傳一個參數為 getter; 傳兩個參數為 setter. D3.js 的 attr() 方法用來設定或取得元素的屬性, 例如 : 

測試 6  :  https://tony1966.000webhostapp.com/test/D3/d3_attr.htm

<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8">
    <title>The Power of D3.js</title>
    <script src="https://d3js.org/d3.v5.min.js"></script>
  </head>
  <body>
    <p id='hello'>Hello World!</p>
  </body>
  <script>
    var p=d3.select('#hello');
    p.attr('style', 'font-size:40px;');
    alert(p.attr('style'));
  </script>
</html>

此例透過 id 取得 p 元素物件後呼叫 attr() 之 setter 方法設定 style 屬性, 然後呼叫 attr() 的 getter 方法讀取 style 屬性. 執行結果如下 :


不只是樣式, 方法 attr() 可設定元素的各種屬性. 事實上除了使用 attr() 外, D3.js 物件還有 style() 方法專門用來設定標籤物件之屬性, 此方法也是有兩個可能參數, 只傳一個時為 getter, 傳兩個時為 setter, 例如 :

測試 7  :  https://tony1966.000webhostapp.com/test/D3/d3_style.htm

<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8">
    <title>The Power of D3.js</title>
    <script src="https://d3js.org/d3.v5.min.js"></script>
  </head>
  <body>
    <p id='hello'>Hello World!</p>
  </body>
  <script>
    var p=d3.select('#hello');
    p.style('font-size', '40px');
    alert(p.style('font-size'));
  </script>
</html>

可見效果與用 attr() 是相同的. 但注意, 第二個參數末尾不可以加 ";", 必須是像 "40px" 這樣的格式, 不能只有數字, 一定要有 px, 且中間不可有空格, 否則會無效果.

樣式設定還有一個 claaed() 方法可用來設定或取得元素的樣式類別, 此方法若只傳一個參數 (class 名稱) 是檢查元素是否有此樣式類別, 傳回值為 true 或 false; 傳入兩個參數時, 若第二參數為 true, 表示為此元素添加該樣式類別, 例如 :

測試 8  :  https://tony1966.000webhostapp.com/test/D3/d3_classed_1.htm

<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8">
    <title>The Power of D3.js</title>
    <script src="https://d3js.org/d3.v5.min.js"></script>
    <style>
      .bgyellow{background-color: yellow;}
      .bgred{background-color: red;}
    </style>
  </head>
  <body>
    <p id='p1'>這是 p1</p>
    <p id='p2' class='bgred'>這是 p2</p>
  </body>
  <script>
    var p1=d3.select('#p1');
    p1.classed("bgyellow", true);
    alert("p1樣式類別=bgyellow:" + p1.classed('bgyellow'));
    var p2=d3.select('#p2'); 
    alert("p2樣式類別=bgred:" + p2.classed('bgred'));
    alert("p2樣式類別=yellow:" + p2.classed('bgyellow'));
  </script>
</html>

此範例網頁有兩個定義在 style 標籤中的樣式類別 bgyellow 與 bgred, 以及兩個 p 元素 : p1 與 p2, 其中元素 p1 預設沒有添加樣式類別, 元素 p2 則預載 bgred 樣式類別. 網頁載入後會呼叫 classed() 為 p1 添加樣式類別 bgyellow, 因此查詢其是否有 bgyellow 類別結果為 true, 接著查詢 p2 是否有 bgred 類別結果也是 true (因為預載), 而查詢 p2 是否有 bgyellow 類別結果為 false, 執行結果如下 :




如果要取消指定之樣式類別, 則需在呼叫 classed() 時第二參數傳入 false 或是一個傳回 return false 的函數, 例如 :

測試 9  :  https://tony1966.000webhostapp.com/test/D3/d3_classed_2.htm

<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8">
    <title>The Power of D3.js</title>
    <script src="https://d3js.org/d3.v5.min.js"></script>
    <style>
      .bgyellow{background-color: yellow;}
      .bgred{background-color: red;}
    </style>
  </head>
  <body>
    <p id='p1' class='bgyellow'>這是 p1</p>
    <p id='p2' class='bgred'>這是 p2</p>
  </body>
  <script>
    var p1=d3.select('#p1');
    alert("p1樣式類別=bgyellow:" + p1.classed('bgyellow'));
    var p2=d3.select('#p2'); 
    alert("p2樣式類別=bgred:" + p2.classed('bgred'));
    p1.classed("bgyellow", false);
    p2.classed("bgred", function(){return false;});
  </script>
</html>

可見不論是直接傳入 false 或一個會傳回 false 的函數, 其效果都是一樣會將指定的樣式類別自元素中移除, 上例的 p1 與 p2 都失去背景顏色了.

除了操控既有的網頁元素外, 還可以呼叫 append() 與 insert() 方法並傳入標籤名稱來添加新的元素, 這兩個方法在只傳入一個參數時效果完全一樣, append() 只能傳入一個標籤參數, 功能是在目前操作之元素的所有子元素後面添加一個新的子元素; 而 insert() 可傳入一個或兩個參數, 當只傳入一個參數時, 其功能與 append() 完全相同, 例如 :

測試 10  :  https://tony1966.000webhostapp.com/test/D3/d3_append.htm

<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8">
    <title>The Power of D3.js</title>
    <script src="https://d3js.org/d3.v5.min.js"></script>
  </head>
  <body>
    <ul>
      <li>食品</li>
      <li>生技</li>
      <li>金融</li>
    </ul>
  </body>
  <script>
    d3.select("ul")
      .append("li")
      .text("鋼鐵");
  </script>
</html>

此程式會在既有的三個清單項目後面添加新的項目 "鋼鐵", 執行結果如下 :
  • 食品
  • 生技
  • 金融
  • 鋼鐵
如果將上面程式中的的 append() 改為 insert() 結果是一樣的, 例如 :

測試 11  :  https://tony1966.000webhostapp.com/test/D3/d3_insert.htm

<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8">
    <title>The Power of D3.js</title>
    <script src="https://d3js.org/d3.v5.min.js"></script>
  </head>
  <body>
    <ul>
      <li>食品</li>
      <li>生技</li>
      <li>金融</li>
    </ul>
  </body>
  <script>
    d3.select("ul")
      .insert("li")
      .text("鋼鐵");
  </script>
</html>

函數 insert(tag1, tag2) 在傳入兩個參數時功能就與 append() 不同了, 其中 tag1 是要添加的子元素標籤, 而 tag2 則是添加位置所在處後面的那個元素, 易即 tag1 會被添加在子元素 tag2 之前, 例如 :

測試 12  :  https://tony1966.000webhostapp.com/test/D3/d3_insert_2.htm

<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8">
    <title>The Power of D3.js</title>
    <script src="https://d3js.org/d3.v5.min.js"></script>
  </head>
  <body>
    <ul>
      <li>食品</li>
      <li>生技</li>
      <li>金融</li>
    </ul>
  </body>
  <script>
    d3.select("ul")
      .insert("li","li")
      .text("鋼鐵");
  </script>
</html>

此例中的 insert("li","li") 表示要在被選取元素 ul 的子元素 li (參數 2) 前面添加一個 li 子元素 (參數 2), 但 ul 有三個 li 子元素, 這時會添加在第一個子元素前面, 執行結果如下 :
  • 鋼鐵
  • 食品
  • 生技
  • 金融
可見 insert() 會將新子元素添加在全部原有子元素的最前面, 而 append() 則是在最後面. 如果要指定插在哪一個子元素前面, 則需使用偽類選擇器 (Pseudo-selector) nth-child(i), 例如 :

測試 13  :  https://tony1966.000webhostapp.com/test/D3/d3_insert_3.htm

<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8">
    <title>The Power of D3.js</title>
    <script src="https://d3js.org/d3.v5.min.js"></script>
  </head>
  <body>
    <ul>
      <li>食品</li>
      <li>生技</li>
      <li>金融</li>
    </ul>
  </body>
  <script>
    d3.select("ul")
      .insert("li","li:nth-child(2)")
      .text("鋼鐵");
  </script>
</html>

此例之 insert() 要在 ul 的第 2 個  li 子元素前面插入一個內容為 "鋼鐵" 的子元素, 因此 "鋼鐵" 變成新的第二個子元素, 結果如下 :
  • 食品
  • 鋼鐵
  • 生技
  • 金融

最後來看看 D3.js 繪圖所使用的 SVG 技術, 繪圖首先須在網頁中利用 append() 或 insert() 新增一個 SVG 畫布元素, 例如 :

測試 14  :  https://tony1966.000webhostapp.com/test/D3/d3_append_svg.htm

<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8">
    <title>The Power of D3.js</title>
    <script src="https://d3js.org/d3.v5.min.js"></script>
  </head>
  <body>
  </body>
  <script>
    d3.select("body")
      .append("svg")
      .attr("width","250px")
      .attr("height","150px")
      .style("background","green");
  </script>
</html>

此網頁之 body 內原本空空如也, 利用 select() 選取 body 元素後呼叫其 append() 方法添加一個 svg 元素, 並接著呼叫其 attr() 方法設定寬高屬性, 最後呼叫 style() 方法設定背景顏色為綠色. 注意, 此處 attr() 不會傳回新的元素物件, 因 style() 仍然是作用於 append() 所傳回的 svg 元素上. 注意, 若將 append() 改為 insert() 效果相同, 執行結果如下 :


SVG 元素是一個可以在上面繪圖的畫布, 只要呼叫 SVG 元素的 append() 方法即可在畫布上添加圖形, 例如傳入 "rect" 即可繪製矩形, 但需透過呼叫 attr() 來修飾其四個屬性 :
  1. width : 矩形寬度
  2. height : 矩形高度
  3. x : 與畫布左緣之距離 (padding)
  4. y : 與畫布上緣之距離 (padding)
例如 :

測試 15  :  https://tony1966.000webhostapp.com/test/D3/d3_draw_rectangle.htm

<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8">
    <title>The Power of D3.js</title>
    <script src="https://d3js.org/d3.v5.min.js"></script>
  </head>
  <body>
  </body>
  <script>
    var svg=d3.select("body")
              .append("svg")
              .attr("width","250px")
              .attr("height","150px")
              .style("background","yellow");
    svg.append("rect")
       .attr("width","150px")
       .attr("height","50px")
       .attr("x","50px")
       .attr("y","50px")
       .style("fill","blue");
  </script>
</html>

此範例先在 body 元素內添加一個 svg 元素, 然後呼叫此 svg 物件之 append() 函數並用 attr() 來修飾矩形的諸元. 執行結果如下 :


如果在呼叫 svg 物件的 append() 時傳入 "circle" 則可在 svg 畫布上繪製圓形, 同樣需呼叫 attr() 修飾下列圓的三個屬性 :
  1. r : 半徑
  2. cx : 圓心與畫布左緣距離 (padding)
  3. cy : 圓心與畫布上緣距離 (padding)
例如 :

測試 16  :  https://tony1966.000webhostapp.com/test/D3/d3_draw_circle.htm

<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8">
    <title>The Power of D3.js</title>
    <script src="https://d3js.org/d3.v5.min.js"></script>
  </head>
  <body>
  </body>
  <script>
    var svg=d3.select("body")
              .append("svg")
              .attr("width","250px")
              .attr("height","150px")
              .style("background","purple");
    svg.append("circle")
       .attr("r","50px")
       .attr("cx","125px")
       .attr("cy","75px")
       .style("fill","red");
  </script>
</html>

執行結果如下 :



以上是 D3.js 的基本用法. 但 D3.js 的威力不只是這樣, 還可以利用 SVG 繪圖. 下面的範例取自 "Practical D3.js" 的第五章加以修改, 其作用是在一塊 200*80 的 SVG 畫布上繪製四個紅色圓圈 :

測試 17  :  https://tony1966.000webhostapp.com/test/D3/d3_svg4circles.htm

<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8">
    <title>The Power of D3.js</title>
    <script src="https://d3js.org/d3.v5.min.js"></script>
  </head>
  <body>
    <svg id='svg1' width='200px' height='80px' style='background:yellow'></svg> 
  </body>
  <script>
    d3.select("#svg1")
      .selectAll("circle")
      .data([40, 80, 120, 160])
      .enter()
      .append("circle")
      .attr("cy", "40")
      .attr("cx", function(d) {return d;})
      .attr("r", "15")
      .style("fill", "red")
      .style("stroke", "black")
      .style("stroke-width", 2);
  </script>
</html>

執行結果如下 :


自從前年學完 jQuery 後就沒再學習新的前端技術了, D3.js 我很早以前就有興趣, 市圖找到的 "網頁互動式資料視覺化 : 使用 D3" 這本之前借來幾次都沒時間看, 現在終於踏出第一步了.
參考 :

SVG D3.js - 淺談 D3.js 的資料處理
CSS 語法簡介
https://github.com/PacktPublishing/Learning-D3js-4-Mapping-Second-Edition

2018年8月1日 星期三

換人工髖關節注意事項

昨日下午 02:00 載爸到中正骨科報到, 經過 X 光, 心電圖, 以及抽血檢查通過後辦理住院, 週三早上 09:20 進行右側人工髖關節手術約 3 小時, 過程順利, 術後輸血一袋以免血紅素過低.

住院時護理人員提到要準備的東西如下 :
  1. 四腳助行器 (醫院可代購, 約 900 元)
  2. 有口袋的較寬鬆運動短褲
衛教手冊摘要如下 :

一. 手術當天 :
  1. 術後禁食約 4 小時 (可嘴唇以棉花棒沾水塗), 之後可少量喝水
  2. 術後需臥床 6-8 小時, 手術部位用冰枕冰敷 15~30 分鐘, 休息 30 分鐘. 冰敷目的是減少急性發炎之腫脹疼痛與出血. 兩腿間夾 A 字枕維持髖部外展, 每兩小時由護理人員協助翻身.
  3. 術後 2~3 天清淡飲食少量多餐, 吃飯時床頭抬高 45~60 度.
  4. 尿袋半滿時先倒至尿壺中倒掉.
  5. 麻藥消退後可做四頭肌與足踝關節運動. 
  6. 多喝水以防泌尿道感染 (每日 1500~2000 ml)

二. 手術後第一天 :
  1. 抽血檢查有無貧血情形. 
  2. 護理人員協助換藥, 若傷口乾燥無滲血情形可三天再更換一次; 若傷口濕潤有滲血情形須通知護理人員協助換藥. 
  3. 身體清潔可擦澡.
三. 手術後第二天 :
  1. 由醫師依傷口引流量多寡決定是否拔除引流管. 拔除後若有滲血情形須請護理人員協助換藥.
  2. 依醫師指示拔除尿管, 並鼓勵多喝水 (每日 1500~2000 ml), 若 6 小時內無法自行解尿應通知護理人員. 
  3. 經醫師允許可下床活動, 第一次下床須漸進式, 先坐在床沿 5~10 分鐘, 不會頭暈再用助行器站起來下床行走, 順序是助行器先, 患肢, 然後是健肢, 須有人在旁協助以防跌倒. 助行器須使用 1~3 個月. 
  4. 坐下時椅子高度不可太低, 膝蓋不可高於髖關節, 故矮椅, 搖椅, 或軟沙發均不適合, 椅子最好有扶手與椅背可靠. 
  5. 上廁所時旁邊須有把手協助以利坐下, 患肢應向前伸直以維持髖部伸直, 避免髖關節彎曲角度超過 90 度造成脫臼.
  6. 手術後若有便秘情形應多攝食高纖維食物如蔬菜, 水果, 優酪乳等.
四. 手術後第 3~4 天 : 
  1. 下床仍須漸進式, 先坐在床沿 5~10 分鐘, 不會頭暈再用助行器站起來下床行走, 順序是助行器先, 患肢, 然後是健肢, 須有人在旁協助以防跌倒. 每天走路時間可從每次 5-10 分鐘, 一天四次開始逐漸增加. 
  2. 下床活動過程中若有傷口異常疼痛不適, 或有滲血滲液情形, 須請護理人員立即換藥處理. 
五. 手術後第 5~7 天 :
  1. 每天走路時間可增加倒每次 10-20 分鐘, 不可過度勞累.
  2. 飲食恢復均衡可多吃高蛋白, 纖維, 與維生素的飲食, 但避免吃辛辣與刺激食物.
六. 活動與姿勢禁忌 :
  1. 椅子勿太低或太軟, 坐下時膝關節須低於髖關節.
  2. 三個月內不可翹腳及交叉雙腿.
  3. 膝蓋或髖關節不可過度內收或內轉.
  4. 勿過度彎腰或蹲下撿東西, 避免提重物, 跑或跳.
  5. 勿彎腰穿鞋, 短期內可請人協助
  6. 勿久坐超過一小時, 應隔段時間站起來伸展腿部, 走一走以防髖關節攣縮. 平躺時應保持髖關節外展.
  7. 術後應使用助行器行走 1~3 個月以免跌倒. 上樓梯應健肢先上, 下樓梯應患肢先下. 

參考 :

髖關節置換手術前後注意事項

此醫院停車方便, 大樓旁有汽車停車位約 20 個, 每半小時 20 元, 機車停車位約 40 個, 每次 10 元; 隔壁是康橋旅店, 旅店對面是小北百貨, 沿瑞源路走一點點是 7-11 與另一個較大的中山橫路停車場. 吃飯則在瑞源路 7-11 對面巷子裡有自助餐, 菜餚甚佳, 但週六週日不營業. 小北百貨旁的九品香連鎖素食物美價廉, 週六週日均有營業. 九品香離公司最近的分店在錦田路 40 號. 

考量下周出院後 1~3 個月內白天應有人陪伴照料避免跌倒, 我今天找到彭婉如基金會的陪伴照料服務, 周一至周五每日 8 小時月費為 24600 元 (B 級), 參考 :

http://www.pwr.org.tw/service/accompany

2018-08-02 補記 :

早上二哥跟老師請假來病房看爺爺, 也帶書來看.

2018-08-03 補記 :

今天院長來查房, 看過爸右腳活動正常後就交代護理師去除引流管與尿管, 所以今天下床上廁所的次數就比較多了, 正好訓練右腳的活動. 早上阿泉伯的孫女打電話來問在哪間醫院, 應該是阿泉伯叫她來探病, 我說心意心領了, 只是微創手術不用麻煩跑一趟啦.

2018-08-04 補記 :

今天小安與未婚妻佩蓉來中正路一帶看婚紗, 說要順路來醫院探望姑丈, 既然已到這附近, 我只好告訴他病房號碼. 早上護理師來換藥, 同時教我出院後如何換藥, 每三天換一次直到拆線. 護理師建議可出房門去走走, 訓練肌肉力量.

# 看診進度查詢

2018-08-17 補記 :

今日回診原本要拆線, 但傷口最下端仍有紅暈, 醫師助理照相後決定下周五再拆.