Python3 – mathモジュール

使い方

数学関数を使うためのモジュールで、importし、各定数・関数について、math.[定数名・関数名]として使う。

関数群

主なもの

定数

pi, e
円周率、自然対数の底
inf
浮動小数点の正の無限大。負の無限大は-math.inf。
nan
浮動小数点の非数NaN。

数論関数

ceil(x)
xの天井(x以上の最小の整数)。
floor(x)
xの床(x以下の最大の整数)。
fabs(x)
xの絶対値。
fmod(x, y)
x \mod yを返す。浮動小数点の場合はx % yよりこちらを使う。
gcd(x, y)
xとyの最大公約数。gcd(0.0, 0.0)は0を返す。
isfinite(x)
xが無限でもNaNでもない時にTrueを返す。
ifinf(x)
xが正の無限大か負の無限大の時にTrueを返す。
isnan(x)
xがNaNの時にTrueを返す。

指数・対数関数

sqrt(n)
nの平方根
pow(x, y)
xのy乗(x^y)。pow(1.0, x)、pow(x, 0.0)は常に1.0を返す。
exp(x)
e^x
expm1(n)
e^x - 1。桁落ちに対して最大精度で計算。
log2(x), log10(x), log(x [,b])
それぞれ2、10、bを底とする対数関数。3番目の関数でbを省略した場合は自然対数\ln x
log1p(x)
1+\log x

を返す。ゼロに近いxに対して正確になるよう計算される。

三角関数

sin(x), cos(x), tan(x)
三角関数。
asin(x), acos(x), atan(x)
逆三角関数
atan2(y, x)
[latex]\tan^{^1}を返すが、4つの象限に対する符号から、[latex]-\pi \sim \pi[/lates]の値を返す。
degrees(r), radians(d)
ラジアンから度、度からラジアンへの変換。

 

R – スクリプトの扱い

スクリプトの記述

  1. コンソールのメニューから、”ファイル”→”新しいスクリプト”でスクリプトエディタ立ち上げ
  2. スクリプトを記述
  3. スクリプトを保存

スクリプトを作業ディレクトリに保存しておくと、コンソールからの実行がしやすい。

作業ディレクトリの確認方法は

スクリプトの実行

エディタからの実行

[CTRL]+R、エディタのカーソル行以降の文が1行ずつ実行される。[CTRL]+Aで全選択して[CTRL]+Rとすると、すべての文が実行される。

コンソールからの実行

スクリプトが作業ディレクトリにある場合は、以下のコマンドで直接実行。

 

QuickLaTeX – 数式の番号について

概要

QuickLaTeXでディスプレイ数式を書くとき、通常のequationやeqnarrayを使うと自動的に番号が付けられるが、番号をつけない方法とまとめて整理した。

ディスプレイ数式

番号付き

equationブロックにする。

(1)    \begin{equation*} y = a x + b \end{equation*}

番号なし

equation*を使う。

     \begin{equation*} y = a x + b \end{equation*}

連立方程式

番号付き

eqnarrayブロックにする。

QuickLaTeXの場合、式番号は連立方程式群に一つの番号がつく。個別の式に番号をつけるためのnumcases、subnumcasesは機能しない。

等号を揃えるには、等号の前後を&で挟む。

(2)    \begin{eqnarray*} x &=& y + z \\ u + v &=& w \end{eqnarray*}

番号なし

eqnarray*を使う。

     \begin{eqnarray*} x &=& y + z \\ u + v &=& w \end{eqnarray*}

Evernoteでノートが読めなくなった件

症状

Android版のEvernoteで特定のノート(多数)を読もうとしたとき、”このノートをロードできません”とダイアログに表示されて、リロードボタンを押しても反応がない。

当初は検索結果で少し古いファイルで発生していたが、そのファイルを直接読もうとしたときにも同じ症状になった。

PC版のEvernoteアプリでは問題はなく読める。

対処方法

概要

Evernoteのバージョンを7.16から7.15にダウングレードする。

注意点

  • apkファイルのダウンロードができない場合の対応が必要
  • apkファイルのインストールが進まない場合の対処が必要
  • Evernoteが勝手に7.16にアップグレードされるのを抑止する必要がある

手順

apkファイルのダウンロード

Androidのほか様々なアプリケーションの旧バージョンをダウンロードできるuptodownから7.15のapkファイルをダウンロードする。このとき、WiFi接続で作業すること。

Android端末のブラウザからuptodownに飛び、Android→Evernote→V7.15を選択。

トラブルと対応

  • Androidオリジナルのブラウザ、ドルフィンブラウザではダウンロードできなかった
    • オリジナルのブラウザでは”安全な接続が確立できませんでした”と表示されて進まない
    • ドルフィンブラウザでは何の反応もない
  • Chromeを使うことでダウンロードできた

apkファイルからインストール

ブラウザのダウンロード履歴から”evernote-7-15.apk”を選択してインストール。

トラブルと対応

  • apkの内容が表示された後、”次へ”ボタンを押しても反応がなく、次へ進めない
    • “キャンセル”ボタンは機能し、ダウンロード履歴の画面に戻れる
  • 常駐アプリで影響があるものを停止させる
    • 設定→アプリケーションの管理→実行中タブ→関連アプリを選択・停止
    • 今回は”Battery Mix”のみが影響していた

アプリの自動更新を禁止

V7.15をインストール後の同期中には元の通りファイルが読めていたが、同期後にV7.16に自動更新されてしまって元のようにノートが読めなくなってしまった。

これを回避するため、Google Playでアプリの自動更新を禁止する。

  • Google Playのメニューから、設定→アプリの自動更新→アプリの自動更新しない、で自動更新を禁止
  • これで全アプリの自動更新はされないが、通知をonにしておけばアプリごとの確認は可能

Evernoteにログイン・同期

Evernoteにログインすると、自動的にノートが同期される。

 

HTML5 – 大きなテーブルのスクロール

横幅が長いテーブルの表示

セルの内容が連続した長いASCII文字列の場合、それが一つのワードとみなされて改行されず、表が横に伸びて表示が乱れる。

aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb cccccccccccccccccccccccccccccccccccccccc
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb cccccccccccccccccccccccccccccccccccccccc
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb cccccccccccccccccccccccccccccccccccccccc

通常の英文の場合は、表示領域の幅に合わせてワード境界で自動改行される。

The rain in Spain stays mainly in the plain Daisy, Daisy, Give me your answer do! Salagadoola mechicka boola bibbidi-bobbidi-boo
The rain in Spain stays mainly in the plain Daisy, Daisy, Give me your answer do! Salagadoola mechicka boola bibbidi-bobbidi-boo
The rain in Spain stays mainly in the plain Daisy, Daisy, Give me your answer do! Salagadoola mechicka boola bibbidi-bobbidi-boo

マルチバイト文字の場合は、各文字がワード扱いになり、任意の位置で自動改行される。

いいいいいいいいいいいいいいいいいいいい ろろろろろろろろろろろろろろろろろろろろ はははははははははははははははははははは
いいいいいいいいいいいいいいいいいいいい ろろろろろろろろろろろろろろろろろろろろ はははははははははははははははははははは
いいいいいいいいいいいいいいいいいいいい ろろろろろろろろろろろろろろろろろろろろ はははははははははははははははははははは

横スクロール

基本形

切れ目のないASCII文字列を画面幅に合わせて横スクロールさせたい場合。

実行例

aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb cccccccccccccccccccccccccccccccccccccccc
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb cccccccccccccccccccccccccccccccccccccccc
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb cccccccccccccccccccccccccccccccccccccccc

 

自動改行の抑止

英文やマルチバイト文字列の場合、スクロール表示させようとしても、自動改行されて常に表示領域に収まるように表の幅が調整されるので、スクロールが効かない。

そこで空白(ワード境界)での改行を抑止させると、折り返されずに票の横幅が長くなり、横スクロールの対象となる。

実行例:英文

The rain in Spain stays mainly in the plain Daisy, Daisy, Give me your answer do! Salagadoola mechicka boola bibbidi-bobbidi-boo
The rain in Spain stays mainly in the plain Daisy, Daisy, Give me your answer do! Salagadoola mechicka boola bibbidi-bobbidi-boo
The rain in Spain stays mainly in the plain Daisy, Daisy, Give me your answer do! Salagadoola mechicka boola bibbidi-bobbidi-boo

 

実行例:和文

いいいいいいいいいいいいいいいいいいいい ろろろろろろろろろろろろろろろろろろろろ はははははははははははははははははははは
いいいいいいいいいいいいいいいいいいいい ろろろろろろろろろろろろろろろろろろろろ はははははははははははははははははははは
いいいいいいいいいいいいいいいいいいいい ろろろろろろろろろろろろろろろろろろろろ はははははははははははははははははははは

 

表幅の固定

自動改行の抑止では、一文が一行となって表の幅が広すぎる。適当なところで折り返したい場合には、表やセルの幅を指定するとよい。

幅指定の際は、ピクセルやセンチ/インチなどのデバイス依存単位より、emなどの文字相当の単位がよい。

実行例:英文

The rain in Spain stays mainly in the plain Daisy, Daisy, Give me your answer do! Salagadoola mechicka boola bibbidi-bobbidi-boo
The rain in Spain stays mainly in the plain Daisy, Daisy, Give me your answer do! Salagadoola mechicka boola bibbidi-bobbidi-boo
The rain in Spain stays mainly in the plain Daisy, Daisy, Give me your answer do! Salagadoola mechicka boola bibbidi-bobbidi-boo

 

実行例:和文

いいいいいいいいいいいいいいいいいいいい ろろろろろろろろろろろろろろろろろろろろ はははははははははははははははははははは
いいいいいいいいいいいいいいいいいいいい ろろろろろろろろろろろろろろろろろろろろ はははははははははははははははははははは
いいいいいいいいいいいいいいいいいいいい ろろろろろろろろろろろろろろろろろろろろ はははははははははははははははははははは

幅と高さの指定

幅と高さをピクセル単位で指定した例。

 

実行例

aaaaaaaaaaaaaaa bbbbbbbbbbbbbbb ccccccccccccccc ddddddddddddddd eeeeeeeeeeeeeee
aaaaaaaaaaaaaaa bbbbbbbbbbbbbbb ccccccccccccccc ddddddddddddddd eeeeeeeeeeeeeee
aaaaaaaaaaaaaaa bbbbbbbbbbbbbbb ccccccccccccccc ddddddddddddddd eeeeeeeeeeeeeee
aaaaaaaaaaaaaaa bbbbbbbbbbbbbbb ccccccccccccccc ddddddddddddddd eeeeeeeeeeeeeee
aaaaaaaaaaaaaaa bbbbbbbbbbbbbbb ccccccccccccccc ddddddddddddddd eeeeeeeeeeeeeee
aaaaaaaaaaaaaaa bbbbbbbbbbbbbbb ccccccccccccccc ddddddddddddddd eeeeeeeeeeeeeee
aaaaaaaaaaaaaaa bbbbbbbbbbbbbbb ccccccccccccccc ddddddddddddddd eeeeeeeeeeeeeee
aaaaaaaaaaaaaaa bbbbbbbbbbbbbbb ccccccccccccccc ddddddddddddddd eeeeeeeeeeeeeee
aaaaaaaaaaaaaaa bbbbbbbbbbbbbbb ccccccccccccccc ddddddddddddddd eeeeeeeeeeeeeee
aaaaaaaaaaaaaaa bbbbbbbbbbbbbbb ccccccccccccccc ddddddddddddddd eeeeeeeeeeeeeee
aaaaaaaaaaaaaaa bbbbbbbbbbbbbbb ccccccccccccccc ddddddddddddddd eeeeeeeeeeeeeee

Illustrator – 基本操作

表示

表示範囲の移動 [SPC] + Drag
拡大 [CTRL] + [SPC] + Click
縮小 [CTRL] + [ALT] + [SPC] + Click

編集

選択 v
ダイレクト選択 a
ペンツール p
アンカーポイント追加 [Shift] + [+]
アンカーポイント削除 [-]

 

Illustrator – 画像の配置~リンク/埋め込み

概要

単に画像ファイルをレイヤにドラッグ・アンド・ドロップすると、画像のリンクが埋め込まれる。

これに対して画像ファイルそのものを埋め込みたい場合は「配置」メニューから画像を配置する。

手順

  1. メニューから「ファイル」→「配置」でダイアログ起動
  2. 配置したいファイルを選択
  3. 下方の「リンク」チェックボックスを選択
    • on→リンク配置(link)
    • off→埋め込み配置(embed)

 

Linuxコマンド – ln

概要

ファイル/ディレクトリへのリンクを作成する。リンクにはハード・リンクとシンボリック・リンクの2種類がある。

ハードリンク

ハードリンクは、ソースのiノード番号をターゲットとして持ち、ソースが移動されたり、名前が変更されても有効。

実行例

  • 1~4行目でソースとその内容を確認
  • 5行目でハードリンクを作成
  • 6~7行目でリンクを確認
  • 8~9行目でリンクで参照されるソースの内容を確認
  • 10行目でソースの名前を変更
  • 11~12行目、変更後もハードリンクは有効

シンボリックリンク

シンボリックリンクでは、リンクファイルにリンク先にソースへのパスが保存され、これを参照してソースがアクセスされる。

ソースの位置や名前が変更されてもリンクファイルのパスは変わらないため、変更後のソースにはアクセスできなくなる(デッド・リンク)。

実行例

  • 1~2行目でソースの内容を確認
  • 3行目でソフトリンクを作成
  • 4~5行目でソフトリンクを確認(パスが表示されている)
  • 6~7行目でソフトリンクからソースの内容を表示
  • 8行目でソースの名前を変更
  • 9~10行目、変更後はソフトリンクからアクセスできない

 

HTML5 – IE互換性

CSSの指定前の処理(IE対応)

IE8以下ではHTML5に対応していないため、新要素は無視されてしまう。IEをHTML5に対応させるJavaScriptがhtml5shivサイトで公開されており、これを最初に読み込んで対応する。

  • 新要素に対してCSSの設定をしている場合、スクリプトがCSSの設定をオーバーライドしないよう、スクリプトの記述をCSS呼び出しの前に置かなければならない。
  • IEの判定部分を<!–[if IE]>としている例もある。
  • HTML5ではscript要素のtype属性の初期値は”text/javascript”として設定されているので省略可能。

IEの条件付きコメント

Microsoft Internet Explorer (MSIE)において、HTMLソースコード中にある条件付きのステートメント。 IE5で初めて導入され、IE9までサポートされた。IE10以降この機能は廃止され、単なるコメントとして扱われる。

コメントの種類 記述
標準のHTMLコメント <–コメント–>
下の階層が隠れる <!–[if expression]>HTML<![endif]–>
下の階層が見える <![if expression]>HTML<![endif]>

下の階層が隠れる条件付きコメント

ブラウザがIEの場合のみHTMLが解釈され、IE以外の場合はブラウザからHTMLが見えない。たとえば、ブラウザがIEの場合のみスクリプトを実行するような場合。

下の階層が見える条件付きコメント

以下は、Microsoftのデフォルトの記法で、ブラウザがIEの場合にはHTMLが解釈されず、IE以外のブラウザにはHTMLが見える記法。

の表現をIEから見ると、ブラウザがIEなのでifの中身は無視される。一方IE以外のブラウザからみると前後のタグ自体が無視されるため、ifの中身だけが見えて実行される。

この記法は正当な(X)HTMLに準拠したものではなく、IE以外のブラウザで前後のタグが無視されることを期待しているにすぎない。そこで、W3C標準を順守するため、以下のような表現が考えられる。

この記法は、正当な(X)HTMLである。ただし条件式のパターンによっては、条件が真となる場合に、HTMLの解釈の前に”–>”を表示してしまう。

 

HTML5 – 標準形・ひな形

全体構成

  • DOCTYPE宣言で始める
  • html要素の中にhead要素とbody要素を記述
  • head要素の中には、meta要素、title要素と、必要に応じてスタイル設定のための要素を記述

DOCTYPE宣言

  • XHTMLに比べて簡略化
  • ブラウザなどにHTML5であることを明示
  • DOCTYPE宣言がないと、ブラウザによってはレンダリングモードが互換モードとなりCSSの解釈が意図と異なるレイアウトとなる場合がある
  • DOCTYPE宣言によって、主要なブラウザは標準モードとなる。

html要素

lang属性による言語の指定

  • htmlタグのlang属性で言語を指定し、ブラウザ・検索サイトなどに伝える。

head要素

文字コード指定

  • head要素内のmeta要素で文字コードを指定する
  • HTML4以前の記述も可能だが、HTML5ではより簡略な表現が可能
  • この宣言より前のものは文字化けの可能性があるため、head要素の冒頭に記述

title

  • head要素内のtitle要素で指定
  • [タイトル]がブラウザのタイトルバーに表示される
  • 検索サイトでの検索結果のタイトルにも使われる

CSS設定

外部ファイル指定

  • head要素内のlinkタグの属性で指定
  • HTML5ではrel属性の値が”stylesheet”の場合のtype属性の値は”text/css”として設定されているので省略可能

CSSの直接記述

  • head要素内のstyle要素の中にCSSの文を直接記述