ソースコードをきれいに印刷したい
目が悪い&人のコードを読む際にはソースコードを紙で見たいという欲求があります。
意外とソースコードの印刷ってきれいにならないんですよね。
最低でもハイライト等の色分けが欲しいです。
幾つか試したのでメモとして残します。
追記:MATLABファイルはMATLABから印刷するのが綺麗。
jupyter を使った印刷
jupyterは依然Texの生成にお世話になったのできれいにソースコードを出力する手法の候補としてすぐ思いつきました。
ossyaritoori.hatenablog.com
なお,今回はmatlabコードを対象とします。
Pythonでもほぼ変わらないでしょう。
ossyaritoori.hatenablog.com
htmlを介した印刷
jupyterからhtmlへと変換すると結構きれいに見えます。
この画面からダイレクトに印刷するとこうなります。
何故かハイライト等が消えてしまいますね。
あまり使いたくないかなぁ。
マークダウンを介したhtml作成
一方で一度マークダウンmdファイルとしてダウンロードした後にVScodeでhtmlに変換するとハイライトが保管されたまま印刷事ができます。
latexを介したPDF作成
一番きれいに見えるのはこの手法です。
一度Texファイルで落としてから,PDFを作成すると一番綺麗に見えます。
しかし,この手法は手間が滅茶苦茶かかるのであんまり使いたくないです。
総括:面倒
jupyterはそもそも起動も面倒だし,いろいろとファイルを介するのはナシですかねぇ。
長いコードであればこの可読性の向上は意味がありますが…
あと,jupyterのKernelがちゃんと機能するPythonやmatlabでしか使えないという欠点があります。
追記:書いてからせやろか?と思ったらC++のためのカーネルもあるようです。軽薄な発言は避けるべきですね。
JupyterにC++のノートのためのclingカーネルを追加する [Mac] - Qiita
VScodeを用いた印刷
最近はVScodeをエディタとして使っていることが多いですが印刷用の拡張機能を作ってくれた方がいます。
blog.bulkus.net
Printcodeで検索してください。
その他
無料ツールやソフトに関しては以下を参照のこと。
Windowsでソースコードを印刷するのにいい方法はないかな - kinneko@転職先募集中の日記
柏キャンパス食文化攻略ガイド <初級編>
どうも。柏のトトロです。
鉛筆を転がしてなんとなくEEICに来て,そこからなんとなく柏でD進してしまうという非常に考えの浅い人生選択を繰り返してきたわけですが,
優秀な後輩諸兄にはこのような愚かな徹を踏まないよう日々を邁進していただきたいと思っています。
私個人の失敗談はともかく,アドベントカレンダーでは柏キャンパスの紹介をしようと思ってます。
本記事では,生き残る上で重要な食に関する知見をつらつら書き起こしておきます。
序論
普段メシを食うとなった場合,主に以下の3つの手法が考えられます。
彼女が作ってくれるとかいう人は知らん。
- 外食(店で食べる)
- 購買系(買ってきて食べる)
- 自炊(自分で作る)
予め言うとキャンパス周辺はこの「外食」も「購買系」も割りと貧弱なので,
「自炊」ができるかどうかはQOLに直結する大問題になります。
タフなEEIC民の皆さんはきっと自分のメシくらい用意できるかと思いますが,
そうはいっても昼夜食を学校の近くで済ますのが最も手っ取り早いので
本記事では主に「外食」について触れて行きます。
柏キャンパスの地理
柏キャンパスと聞くととてつもないオープンワールドを想像する方もいるかもしれませんが,
ぶっちゃけキャンパス周辺にPlayableな箇所は少ないです。
柏駅
勘違いされると困るのですが柏駅周辺はそこそこ栄えており,北関東の常磐線ユーザがわざわざ「上京」してくるくらいには店もモノもあります。
しかしながら,キャンパスからのアクセスは約6kmで体感バスで30分くらい,自転車で45分くらいです。
本郷から6kmというと新宿御苑につけるくらい。あるいは北千住にいけるくらいです。
(出典:同心円地図)
つまり柏キャンパスは「柏」にはない。いいね?
はじまり:キャンパス近辺
さて,キャンパス徒歩圏内の食事所を見ていきましょう。
予算に制限さえなければ以外とそれなりに選択の余地はあります。
食堂,おさかな倶楽部はま
柏キャンパスの食堂は2つありますがどちらも生協ではないため,他キャンパスでは見ないメニューを扱っています。
特別美味いとか安いとかは無いですがだいたい1食500円前後で収まるためキャンパス民の基本食になっています。
特色があるのは海洋水産研究所の建物にある「おさかな倶楽部はま」です。
昼にはワンコイン(現在550円)でちゃんとした海鮮丼が食べれたりするほか,各種にぎりのセットなどが1000円以内で食べれます。
キャンパス初心者の接待は大体ここからはじまります。
あと,夜には飲み屋としても機能します。
これらの欠点は休日に閉店することです。
土日に有効な兵糧を得られないため長らくラボ畜の休日の食事事情は惨憺たるものになっていました。
ヨークマート柏の葉
近年建設された「院生用食料補給援助基地」であるところのヨークマートは土日の食事情を大きく改善し,院生の健康維持に大きく役立っています。あと地味に100均や薬局,ホームセンター等が併設されており東大生協の500倍は学生生活に貢献しています。
PUDOというAmazon等の荷物を預け入れできるボックスがあるのもGood。
PUDO(プドー)ステーション | パックシティジャパン
近くにセブンイレブンがあるので補給基地が来る前はそちらにも行っていました。
うどん市
学校から歩ける中で最も近いごはん処です。
美味いのとアクセスが良いので特に土日には非常にお世話になる確率が高い人気店です。
丼物とのセットがオススメ。
五右衛門
和風パスタ。パスタに1000円かけたくないので行かない。
がんばれゴエモン 。
自転車を手に入れよう
柏キャンパス周辺グルメは自転車がないとアクセスしにくいのが多いです。
通学,ツーリング,日常生活のどれにおいても自転車以上の機動力を持つことでかなり生活範囲が広がります。
儲かるAmazon広告の傾向(短期経過報告)
結論から言うとアフィリエイトは本気でやらない限り儲からないですね。
Onlineメモ帳である当ブログには皆目関係ない話ですが,ちょっと興味沸いたのでメモします。
広告張って何が売れたのか?
基本は技術の紹介(メモ)して関連書籍を列挙しているのでその辺が売れているようです。
時々関係ないものも売れていますが,リンクから飛んだページで何か買えばそれが収益になるってことでしょうか。
僕のブログから「六代目中村勘九郎写真集」買った人がどういう心境でこれを買ったのか非常に気になるw。
- 作者: 篠山紀信
- 出版社/メーカー: 光文社
- 発売日: 2015/04/11
- メディア: 単行本
- この商品を含むブログ (1件) を見る
あと変なウィジェット作らずに商品リンク直に貼ったほうがコンバージョンレートが良いです。
Amazonの紹介料の仕組み?
ざっくりいうと広告張ってそのリンクから商品が売れたら報酬がもらえるという感じです。
各商品の利率はこちら。
https://affiliate.amazon.co.jp/welcome/getstarted_fourth
メインで売れてる本のたぐいは3%しか無いので正直全然儲からないですね。しってた。
一方でAmazon関連商品や,食品,ディジタルコンテンツ等顧客がリピートしやすく単価の低いものも利率が高いですね。
お料理ブログって儲かるのでは
例えばパントリーなど食品に関わる項目の利率が8%と高いことが伺えます。
料理のレシピなどを説明するブログを書いて,記事の下部等で調味料や食材へのリンクを張れば内容と直結しているので購入を促す事ができるのではないでしょうか。
レシピの出来によっては顧客のリターン率も高いでしょうし繰り返しリンクを踏んで貰えることも期待できます。
少なくともクッ◯パッドでレシピ上げるより儲かるっぽい
問題は単価が安いことですが,そこはアクセス数が多ければなんとかなるでしょう。
アンチョビ小噺
流れに乗って書きますが,プッタネスカ(娼婦風パスタ)など手軽な料理に使える「アンチョビ」はスーパーで買うと死ぬほど高いですが,
Amazonパントリーで買うと100円ポッキリで手に入ったりします。
なんか一時期100円均一ショップで売っていた代物らしいですね。うちの近くにはなかったや。
100均のアンチョビ缶詰でつくる料理がうまいのなんの! - NAVER まとめ
なお,アンチョビと言ったらペルーのイメージですが,
主な原産国のペルーにおいて原材料のカタクチイワシは99%は魚粉に使われていてアンチョビになるのはごくわずからしく,
アンチョビを食わせて人々のタンパク質不足を解消しようという試みがあるそうな。
追記: 10年前のプロジェクトでした。
プロジェクト概要 | 責任ある漁業のための零細漁民研修プロジェクト | 技術協力プロジェクト | 事業・プロジェクト - JICA
その後の経過もちょくちょく出ていて少なくとも2011年まで活動があったことがうかがい知れます。
帰ってきたアンチョビ | 責任ある漁業のための零細漁民研修プロジェクト | 技術協力プロジェクト | 事業・プロジェクト - JICA
「せっかく山岳地帯の人達がアンチョビを食べるようになったのに、原料が獲れないからと言ってそのままにしておいたら、ふた月もすればもう、皆、アンチョビの事など忘れてしまいます。そして、子供たちの栄養失調もいつまでたっても改善されません。」
「私はペリカンやアシカ達をも代表してアンチョビに一言、言いたいのです。「お帰りなさい。そして、もう、どこへも行かないで」」
Numpy Center of Mass,行列の重心点を求める
簡単なプログラムですがこれがなかなか見つからないので残しておきます。
重心点は中心からの距離を測っています。
中心点から見た重心
def CenterOfGravity(mat): hei,wid = mat.shape Tile=np.arange(wid,dtype=float)-(wid-1.0)/2.0 Tx = np.tile(Tile,[hei,1]) # Ty = Tx.T Sum = np.sum(mat) Ax = np.sum(mat*Tx)/Sum Ay = np.sum(mat*Tx.T)/Sum return [Ay,Ax]
端からみた重心(0スタート)
def CenterOfGravity(mat): hei,wid = mat.shape Tile=np.arange(wid,dtype=float) Tx = np.tile(Tile,[hei,1]) # Ty = Tx.T Sum = np.sum(mat) Ax = np.sum(mat*Tx)/Sum Ay = np.sum(mat*Tx.T)/Sum return [Ay,Ax]
メモ
np.arrangeで0,1,2,,,みたいな行列を作成。
np.tileで並べる。
補足
コメントより。
2値の場合の重心なら以下のようによりシンプルに求めることができます。
def getCenter(binimg): ys, xs= np.where(binimg == 255) x = np.average(xs) y = np.average(ys) return [x, y]
DesignCutsのデザインセットを購入してみた
注意:当記事にはクリスマスを想起する表現が多々含まれています。耐性の無い方や思う所のある方は引き返してください。
フォント&デザインセットがお得
セールという言葉に弱いおじさんなので以下の記事に興味を持ちました。
coliss.com
買った
なんとなくクレカ情報を入力したくなかったのでPaypalに登録してそこを介して支払いました。
ZIPが解凍できない問題
実はZIPのファイルの容量がある程度大きくなると(4GBくらい?)ZIP64という形式になるので,
Lhaplusなどでは解答できない問題があります。
大容量のzipを展開(解凍)できない bad CRCなどのエラーが発生する場合の対処法 - Qiita
結局どう使うのか
とりあえず買って満足しましたが使い方がわからないものもちらほら。
分かった順に使用感を書き足していきます。
ていうか多すぎなので誰か用途一覧を作って。
画像素材系 : PNG JPG
画像の素材系は主に背景に用いるようなJPGと透過素材のPNGに別れます。
PNGは透過情報があるため例えばもらった画像にちょっとだけ書き足したりができます。
Windows10のDefaultではGIMPが使えますが技術屋ならPPTやIncscapeでお絵かきができるでしょう。
例:「Artistmef」雪の透過画像
例えば雪の透過画像があったりします。
- 私が作ったクソポスター(ちなみに集まった人はいない)もこのように情緒ある感じに。
例:「7th Avenue Designs」クリスマスっぽいかわいい背景画像
背景画像の幾つかはきちんと縦横がループする仕様になっているので適当な箇所で切り抜いてそれをコピペで並べると
マスキングテープ風の帯がつくれます。
フォント系 .otf .ttf などなど
フォント系はTTFやOTFというファイルで入っています。OpenType,TrueTypeなどの訳語です。
導入の方法は簡単でファイルを右クリックして「インストール」をクリックするだけです。
とりあえず,幾つかのフォントの存在を確認しています。
neublaでさっきの画像を加工するとこんな感じ
背景:「Greta Ivy」
フォント: 上から「neubra」,「Brixton TC」,「Spectrum」
完全に素材に物を言わせて作ってもそれっぽい感じになります。
なお,このカードのEventは実際に開催されません。かなC。
イラストレータ用ファイル? : .ai
aiファイルはイラストレーターで使える拡張子のようですがAdobeReaderでも開けるそうです。
aiファイル イラストレータがなくても開く方法 - NAVER まとめ
PPTに変換する事もできるっぽいですがイラレ使えという結論になりそう。
illustratorのファイルをPowerPointに編集可能な状態で変換する方法
「Everyday Tuesday」
毎日が火曜日。キツイっすね。
一応Adobeで開けますがこの形だとちょっと使いづらいと思います。
[F: id: ossyaritoori: 20171216170535p: plain]
Photoshop用ファイル:PSD
「Offset」や「Original Mockups」のなかにはいってます。未確認。
どうもGIMPで開けるっぽいです。
ferret-plus.com
未調査:LRTEMPLATEファイル
「BETO」の中に入っているのがこれになります。なんだこれ?
メモ
ペンギン好きのための素材「Marish」
かわいい。
Slackのプロフィールにした。
Kicadを使ってコネクタ変換基板を作りたい(導入編)
いつか触ろうと思っていたKicadがどうも必要になったぽいので記事書きます。
現在未完。
回路作成ソフトについて
ユニバーサル基板で細々作るのもいいですが見た目の綺麗さや配線のめんどくささを加味すると回路作成ソフトに手を出す理由は十二分に存在します。
個人でも使えるプリント基板業者 - NAVER まとめ
今や基盤作成を外注して届けてくれるサービスも多々あるのでこれらと連携するイメージです。
自分の中では主に2種類が有名なのかなって思ってます。
作りたい物
3M社の100極コネクタからそれぞれ別々の信号線を取り出してDsub15ピンやBNCケーブルに出力したいです。
弊研究室では伝統的に空中配線とかユニバーサル基板を介して作成とかやってましたが100ピンは流石に無理&保守性を考えて基板実装を目指します。
必要物
Kicadをインストールしましょう。
素子の情報(フットプリントとか?)
一般的な素子はKicad内に既にデータがありますが,
一般的でない素子の場合は自分で作る必要があります。
作り方はこちら。
KiCadの回路記号&フットプリントを作る方法|一日体験!プロの基板作り|記事サポート | トランジスタ技術
ただ,既に有志が作ってくれている場合も多く,例えば僕の場合は探せば見つかりました。
102A0-6212PC - 3M - PCB Footprint & Symbol Download
やったぜ。
Library Loader からモデルをダウンロード
Library Loaderというソフトをダウンロードします。
PCB Library Modelの使い方
PCB Part Library 使い方 (KiCad編)
このサイトの流れに沿って行きます。
ただ,ここにあるようにCドライブの直下に作ると権限のないソフトがファイルを作成できなくなるので
Documentの何処かに SamacSysのLibフォルダを作ると良いです。
Kicad流れ
大まかにはこんな感じでしょうか。進んだら記事書きます。
- 回路図作成 結線
- 部品の配置
- 自動配線
- 指定の書式で出力
自動配線ツール
さて,下のような部品群になりましたが正直いちいち配線したくないです。
こういうのはプログラミングの出番でしょう?
ということで自動配線ツールが次のサイトで紹介されています。
kerikeri.top
MATLAB グラフの色をうまいこと調整する関数
MATLABのplot関数で作成した図の色にいつも困っているので関数作成。
デフォルトのr g b c m y などで決める色はいつも微妙に感じるのでそれらを変えてみようという試みです。
テスト用データ作成
これをプロットしていきます。
t = 0:0.01:3; y = [sin(t);sin(t+0.1);sin(t+0.2);sin(t+0.3);sin(t+0.4);sin(t+0.5);sin(t+0.6);sin(t+0.7)];
Defaultカラー抽出
MATLABのデフォルトカラーはそこそこいい感じです。
RGB values for 2014b default colors - MATLAB Answers - MATLAB Central
次のコマンドでデフォルトカラーを確認できます。
get(groot,'DefaultAxesColorOrder')
先程のデータをプロットしましょう。
後ろの方は微妙ですが最初の4つくらいは普通に使える良い色合いだと思います。
RGB値は以下の通り。
0 0.4470 0.7410 % 青 0.8500 0.3250 0.0980 % 赤 0.9290 0.6940 0.1250 % 山吹色 0.4940 0.1840 0.5560 % 紫 0.4660 0.6740 0.1880 % 緑 0.3010 0.7450 0.9330 % シアン 0.6350 0.0780 0.1840 % 茶色
どんな色がいいか?
さて,そのうちどのような色を用いればいいかですが,matlabの設定はまぁ悪くないかなぁと思っています。
青b,赤r,黄色y,後紫pは採用かなぁ。緑gはちょっと考えます。
あと,使えそうな色はオレンジoでしょうか。
どんな色がいいかとかは論文が幾つかありますがこんなの読んでいる場合じゃねぇ。
http://www.perceptualedge.com/articles/visual_business_intelligence/rules_for_using_color.pdf
色変更
plotする時にRGBで色を指定するには以下のように書けばよいですが,正直言ってこんなの絶対書きたくない。
plot(t,y,'Color',[1., 0.5, 0.])
一方で,Figureハンドルを入手していれば次のように代入形式で後付けで色を変更できます。
自動化が出来そうな兆しが見えてきましたね。
fig=plot(t,y) fig(5).Color = [0,0.7,0] fig(6).Color = [1., 0.5, 0.]
これで緑を強めにしてオレンジを追加しました。
後は関数化するだけや。
http://oxon.hatenablog.com/entries/2010/11/19
自動色つけ関数
仕様:グラフハンドルと色ハンドルを同時に渡してその色に対応するようにグラフを変えるsetfigcolor()関数を作成。
setfigcolor(fig,'gbryo')
このように入れたい色を十番通り文字で指定すれば次のように変更可能ということ
なお,2つ目の色指定を全くしなければ関数内部で自動設定したデフォルトの色になります。
関数本体
function setfigcolor(hfig,colors,presetcolor) glen = size(hfig,1); colorcode = ['b';'r';'y';'p';'g';'o';'c';'k']; if nargin == 2 presetcolor = [0 0.4470 0.7410; % 青 0.8500 0.3250 0.0980; % 赤 0.9290 0.6940 0.1250; % 山吹色 0.4940 0.1840 0.5560; % 紫 0.4660 0.6740 0.1880; % 緑 1. 0.5, 0. ; % Orange 0.6350 0.0780 0.1840; % chacole 0 0 0]; %black elseif nargin == 1 presetcolor = [0 0.4470 0.7410; % 青 0.8500 0.3250 0.0980; % 赤 0.9290 0.6940 0.1250; % 山吹色 0.4940 0.1840 0.5560; % 紫 0.4660 0.6740 0.1880; % 緑 1. 0.5, 0. ; % Orange 0.6350 0.0780 0.1840; % chacole 0 0 0]; %black colors = colorcode'; end len=length(colors); % set colors for i=1:min(glen,len) n = find(colorcode== colors(i)); hfig(i).Color = presetcolor(n,:); end end
色盲用colormap
[ Wong,2011 ]の論文に依ると次のカラーマップが色盲用には見やすいようです。
Points of view: Color blindness | Nature Methods
presetcolor = [ 0,0,0; 230,159,0; 86,180,233; 0,158,115; 240,228,66; 0,114,178; 213,94,0; 204,121,167]/255.0;
plotは以下のようになりますが,黒がTopなのは賛否両論ありそうです。
順番変えてもいいのかなぁ。