投稿

ブログの説明

学校に通わないで学んだことを記しています。間違っているところが何かありましたらご指摘下さると幸いです。コメントに対する返信が遅れる可能性があります。その場合は申し訳ございません。

このブログでは広告を表示しています。このブログ内の投稿記事を検索するには右上の拡大鏡のアイコンを、アーカイブやラベル付けから投稿記事を閲覧するには左上の三重線のアイコンをクリックして下さい。

数式の表示にはMathJaxを利用させていただいています。数式の表示のためにJavaScriptが有効である必要があります。そうでない場合、訳の分からないLaTeXのコードが表示されます。幾何学図形やチャートの表示にはHTML5 CanvasやGoogle Chartを使用しています。その表示のためにもJavaScriptが有効である必要があります。

生徒の成績表を作成し、偏差値を計算する LibreOffice Calc編

イメージ
ここで使用する表計算ソフトはLibreOfficeのバージョン4.3.3.2。これらのやり方はApache OpenOfficeやNeoOfficeにも適用可能かもしれない。 試験のスコアを入力する表を作る 例えば次のような項目を用意する。 生徒のIDを入力する。 ※ ※ 成績は生徒の極めて重要なプライバシーに関わる情報であるため、ここに生徒の名前は直接入力せず、代わりに生徒IDを入力してダミー変数として管理する。生徒IDと生徒名との対応表は別途作成し、印刷するか別の記録媒体に保存して安全な場所で厳重に保管し、その対応表はなるべく持ち歩かない。いくつかの重要な情報を分散し、他方を記号化して管理することで、外部の人々にはちょっとした暗号として働くので、試験のスコア表や偏差値が外部に流出してしまってもそれらの個々の情報がどの個人に関連しているのかがすぐには特定されにくく、情報の安全性を、この場合は外部における匿名性を、いくらか高めることができる。 例えば2年A組男子を2AM01として最初のセルに入力する。 そしてそのセルの右下端の■にマウスポインタを合わせて下へドラッグする。 上のような機能はマイクロソフトの表計算ソフトウェアExcelでは「オートフィル」として知られている。 そうすると2AM01から2AM10までのIDが自動的に生成される。 女子は例えばMをFにして2AF01と入力して同様に入力する。 表全体を、例えばマウスの左クリックとドラッグによって、選択する。 外枠や格子状の線を引くために外枠のボタン を左クリックする。 次のように右下の格子状を左クリックして選択する。 スクロールしても項目が動かないように固定するため、項目のすぐ下の行を選択する。 メニューバーの「ウィンドウ」を左クリックし、そのメニューから「固定」を左クリックして選ぶ。 こうするとスクロールしても項目は固定されるので見やすくなる。 偏差値を計算するために平均点と標準偏差が必要になるので、そのための表も作っておく。 これで表が完成したので、次に生徒の試験のスコアを入力していく。 合計点、平均点、標準偏差、偏差値を計算する 教科ごとのスコアの合計を計算するため、合計点の項目の先頭のセルを左クリックして選ぶ。 シグマのボタン を左クリックする。Exce...

HTML5のCanvas 2Dで画像を表示

HTML(ハイパー・テキスト・マークアップ言語)の最新の仕様である HTML5 にはCanvasという要素がある。この要素を利用すると、画像ファイルやFlash playerやJavaアプレットなどに頼らず、HTMLとCSSとJavaScriptだけで図形やアニメーションをウェブ・ページ上に描画することができるらしい。 必要なものはHTML5とCSSとJavaScriptに対応しているウェブ・ブラウザである。世界的に普及している主要なウェブ・ブラウザ(Google Chrome, Firefox, Opera, Safariなど)の最新版をインストールしていれば、基本的なことはできるようだ。 下準備 最初に、Canvas要素を埋め込んだHTML文書(.htmlという拡張子を持つテキストファイル)を作成した。HTMLはHTML5の仕様に則って記述したつもり。そのファイルの内容は次のとおり。 <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>Canvasを学ぶ</title> </head> <body> <canvas id="canvas_rectangle" width="250" height="250"> あなたのブラウザはCanvas要素に対応していません。 </canvas> <script type="text/javascript" src="canvas_rectangle.js"></script> </body> </html> canvas要素のid属性で指定した名前はJavaScriptのソースコードから参照するために使われるもの。canvas要素のwidthとheightでCanvasの描画範囲の大きさを指定した。widthが幅でheightが高さ。script要素を記述し、そのsrc属性にJavaScriptのソースファイル名を指定した。このファイルにJavaScriptでコー...

HTML5のCanvas 2DのAPIを利用して文字列を描く

HTML(ハイパー・テキスト・マークアップ言語)の最新の仕様である HTML5 にはCanvasという要素がある。この要素を利用すると、画像ファイルやFlash playerやJavaアプレットなどに頼らず、HTMLとCSSとJavaScriptだけで図形やアニメーションをウェブ・ページ上に描画することができるらしい。 必要なものはHTML5とCSSとJavaScriptに対応しているウェブ・ブラウザである。世界的に普及している主要なウェブ・ブラウザ(Google Chrome, Firefox, Opera, Safariなど)の最新版をインストールしていれば、基本的なことはできるようだ。 下準備 最初に、Canvas要素を埋め込んだHTML文書(.htmlという拡張子を持つテキストファイル)を作成した。HTMLはHTML5の仕様に則って記述した。そのファイルの内容は次のとおり。 <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>Canvasを学ぶ</title> <link rel="stylesheet" type="text/css" href="style.css" /> </head> <body> <canvas id="canvas_letter" width="380" height="120"> あなたのブラウザはCanvas要素に対応していません。 </canvas> <script type="text/javascript" src="canvas_letter.js"></script> </body> </html> canvas要素のid属性で指定した名前はJavaScriptのソースコードから参照するために使われるもの。canvas要素のwidthとheightでCanvasの描画範囲の大きさを指定...

HTML5のCanvas 2Dを利用して図形を描く

HTML(ハイパー・テキスト・マークアップ言語)の最新の仕様である HTML5 にはCanvasという要素がある。この要素を利用すると、画像ファイルやFlash playerやJavaアプレットなどに頼らず、HTMLとCSSとJavaScriptだけで図形やアニメーションをウェブ・ページ上に描画することができるらしい。 必要なものはHTML5とCSSとJavaScriptに対応しているウェブ・ブラウザである。世界的に普及している主要なウェブ・ブラウザ(Google Chrome, Firefox, Opera, Safariなど)の最新版をインストールしていれば、基本的なことはできるようだ。 下準備 最初に、Canvas要素を埋め込んだHTML文書(.htmlという拡張子を持つテキストファイル)を作成した。HTMLはHTML5の仕様に則って記述した。そのファイルの内容は次のとおり。 <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>Canvasを学ぶ</title> <link rel="stylesheet" type="text/css" href="style.css" /> </head> <body> <canvas id="canvas_figure" width="250" height="250"> あなたのブラウザはCanvas要素に対応していません。 </canvas> <script type="text/javascript" src="canvas_figure.js"></script> </body> </html> canvas要素のid属性で指定した名前はJavaScriptのソースコードから参照するために使われるもの。canvas要素のwidthとheightでCanvasの描画範囲の大きさを指定した。w...

HTML5のCanvas 2Dを利用して直線を描く

Canvas 2Dを表示するためのHTML文書は次のとおり。body要素の中にcanvas要素を設け、id属性とCanvasの大きさをwidth(幅)とheight(高さ)で指定する。このid名はJavaScriptのソースから参照するために使う。 <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>Canvasを学ぶ</title> </head> <body> <canvas id="canvas" width="350" height="350"> あなたのブラウザはCanvas要素に対応していません。 </canvas> <script type="text/javascript" src="canvas_straight_line.js"></script> </body> </html> canvas_straight_line.jsという名のファイルに次のようなコードを記述して保存。最初の2行はCanvasで2D画を描くときのお決まりのコード。lineWidthプロパティで線幅を指定している。beginPathメソッドで初期化。moveToメソッドの引数で線の視点をxy座標の値として指定し、lineToメソッドの引数で線の終点をxy座標の値として指定している。xy座標系はCanvasの左上端が(0,0)となる。そこから下へ伸びるほど(0,100)のようにyの値が増し、右へ伸びるほど(100,0)のようにxの値が増す。そして最後にstrokeメソッドを使って線を描いている。 let canvas = document.getElementById("canvas"); let context = canvas.getContext("2d"); // x軸 context.beginPath(); //パスのリセット context.lineWidth =...

できる男は表計算ソフトでなくR言語を使う その1

Debian GNU/Linux 8でのR言語のインストールと起動・終了 とりあえず、r-baseというdebパッケージをインストールする。すると依存関係によっていくつかの基本的なパッケージがインストールされる。Ubuntuでもおそらく同じパッケージ名のはず。OpenSUSEではR-baseというパッケージ名であるようだ。FedoraやVineでは大文字のRというパッケージ名で、ArchlinuxやManjaroでは小文字のrというパッケージ名のようだ。 ちなみに、WindowsユーザーとMacユーザーは https://cran.r-project.org/mirrors.html からダウンロードすることができるようだ。お近くのミラーサーバを選び、Windowsユーザーは「Download R for Windows」というリンクをクリックしてbaseをダウンロードしてインストールし、Macユーザーは「Download R for (Mac) OS X」をクリックして適切なバージョンのpkgをダウンロードしてインストールすれば使えるようだ。 Debian GNU/Linux 8でのインストール。 $ sudo apt-get update $ sudo apt-get install r-base 適切に環境設定が行われていれば、コマンドライン上で大文字のRと入力してEnterキーを押せばRが起動する。 $ R バージョン番号やちょっとした説明とともに次のようなプロンプトが表示される。ここで使用するR言語のバージョンは3.1.1。 > Rを終了するにはq()と入力してEnterキーを押す。すると次のようなメッセージが出る。 > q() Save workspace image? [y/n/c]: ワークスペース・イメージを保存するか問われる。yなら保存して終了。nなら保存しないで終了。cなら終了しない。ワークスペース・イメージを保存すると、そのときに定義して値を代入した変数が次の起動時にもそのまま有効になっていて使える。 R言語の使い方あれこれ R言語では変数へ値を入れるための代入演算子が一般的なものとは少しちがっている。 > a1 <- 5 > 15 -> a2 > a1 + a2 [1] 2...

2進数とその各桁の重み

2進法(2進位取り記法) 次のように、例えば1と0という2つの記号だけで数を表現する方法(記数法)を 2進法(2進位取り記法) と呼ぶ。 0, 1, 10, 11, 100, 101, 110, 111, 1000, 1001, 1010, 1011, 1100, 1101, 1110, 1111, 10000, 10001, 10010, 10011, 10100, 10101, 10110, 10111, 11000, 11001, 11010, 11011, 11100, 11101, 11110, 11111, 100000, ...(,は区切りを、...は省略を意味する) このように2進法を用いて表した数を 2進数(binary number) と呼ぶ。10進法では1桁に0から9までの十の値を持つことができるが、2進法では1つの桁に0か1かの二つの値しか持つことができない。 10進法では、9の次が10、99の次が100、999の次が1000、9999の次が10000というふうにすべての桁が9の値で満たされるごとに桁数が増え、位が1桁上がってゆくが、2進法では、1の次が10、11の次が100、111の次が1000、1111の次が10000...というふうにすべての桁が1の値で満たされるごとに桁数が増え、位が1桁上がってゆく。このようにして桁数を増やしてゆく表記方法を 位取り記数法 と呼ぶ。 10進法の場合: \[ \begin{array}{r} &&9 \\ +&&1 \\ \hline &1&0 \end{array} \] 2進法の場合: \[ \begin{array}{r} &&1 \\ +&&1 \\ \hline &1&0 \end{array} \] n進数のnとは、その数の1桁(1つの位)が持つことができる値とその値を表す記号の数を意味しており、これを 基数 と呼ぶ。数学では 底 とも言う。10進数では10、2進数では2が、それぞれその基数(または底)である。 2進数が10進数ではどの数に対応しているか、つまり2進数の数が10進数ではどの数と等しい関係にあるかを表にしてみた。 2進数と10進数の対応関係 2進数 10...