投稿

gnuplot : プロット画像のサイズ指定について(set sizeとの違い)

イメージ
gnuplotでのサイズ指定 gnuplotでプロットをpngなど画像として出力する際のサイズ指定は次のように行ないます。 gnuplot> set terminal pngcairo size 640, 480 出力端末(ここではpngcairo)の設定のときにサイズ指定も行うという型式です。 出力例 以下は 1280x960 640x480 320x240 の3つのサイズで出力したものです。 (別々に出力してGIMPで合成しています) プロットソースコード set term pngcairo size 1280, 960 font ",24" set output "1280x960.png" set title "size : 1280x960" plot sin(x) w l lw 5 lc "red" set term pngcairo size 640, 480 font ",12" set output "640x480.png" set title "size : 640x480" plot x**3 w l lw 3 lc "blue" set term pngcairo size 320, 240 font ",8" set output "320x240.png" set title "size : 320x240" plot 2**x w l lw 2 lc "green" 間違えやすい設定(set size)  gnuplotには上記とは異なる "set size"という設定があります。これは何かというと、プロット領域のサイズ指定に関する設定となっています。出力画像のサイズ設定ではありません。 (古いバージョンのgnuplotではこの "set size" で出力画像のサイズ設定を行っていたようです。また端末によってはまだ古い設定のままのものが残っているようです)  "set size...

gnuplot : 日時データのプロット方法を忘れてしまった場合の対処法(usingで擬似的な列を指定する)

はじめに : 日時データのプロットについて 以前にgnuplotで日時データをプロットする方法の解説をしました。 gnuplotでの日時データのプロットについて gnuplotの日時データ扱いのフォーマット  方法自体はそこで紹介したものでいいのですが、実際に日時に関する実データをプロットするときにその設定を探してくるという手間が生じるでしょう。普段から日時データを扱っていない場合はなおさらかと思います。 今回紹介する方法は、日時データでもとりあえずプロットだけしてみるという話です。ちゃんとプロットする場合には当然向いていない方法なのであしからず。 (この方法の問題点は最後に後述してあります) とりあえず日時データをプロット 方法としてはusingの解説で紹介したことを用います。 gnuplotでデータファイルをプロットするときの列の指定について(using)  ここで紹介した、擬似的な列を指定する方法を用います。 用いるデータ  プロットに用いるデータとして以下のようなものを用意しました。 2018/3/9 21:00:00 3.6 2018/3/9 22:00:00 6.1 2018/3/9 23:00:00 3.0 2018/3/10 00:00:00 1.9 2018/3/10 1:00:00 5.2 2018/3/10 2:00:00 1.1 2018/3/10 3:00:00 2.2 2018/3/10 4:00:00 1.9 2018/3/10 5:00:00 2.8 1列目 : 年月日 2列目 : 時刻 3列目 : Y軸データ となっています。 これをそのままプロットしてもおかしなグラフになってしまうでしょう。またusingを使った場合でも "using 1:3" としても "using 2:3" としてもまともにプロットされません。  これを擬似的な列でプロットする方法 using 0:3 もしくは using 3 と指定すれば、x軸が 0, 1, 2, 3, 4, 5 , ... となり一応グラフとしてプロットされます。 (using ($0):($3)でも可)  この方法はとりあえず簡易的にプロットしてデータ...

gnuplotプロット例 : 方位の図示

イメージ
gnuplotによるプロット例 : 方位の図示 方位の図示 プロットソースコード set size square set angles degrees unset key unset tics l = 3.0 l2 = l*0.85 d = 360.0/16.0 n=1; set label n "東北東" at cos(n*d)*l, sin(n*d)*l center font ",10" n=2; set label n "北東" at cos(n*d)*l, sin(n*d)*l center font ",16" n=3; set label n "北北東" at cos(n*d)*l, sin(n*d)*l center font ",10" n=4; set label n "北" at cos(n*d)*l, sin(n*d)*l center font ",22" n=5; set label n "北北西" at cos(n*d)*l, sin(n*d)*l center font ",10" n=6; set label n "北西" at cos(n*d)*l, sin(n*d)*l center font ",16" n=7; set label n "西北西" at cos(n*d)*l, sin(n*d)*l center font ",10" n=8; set label n "西" at cos(n*d)*l, sin(n*d)*l center font ",22" n=9; set label n "西南西" at cos(n*d)*l, sin(n*d)*l center font ",10" n=10; set label n "南西" at cos(n*d)*l, sin(n*d)*l center...

CSSの勉強 6 : 子孫結合子(Descendant combinator)について(グループ化とは異なる)

 このブログ記事は個人的な勉強のメモ書き、覚え書き程度のものです。内容の正確性などあまり当てにならない面が多いので、ちゃんとしている情報を知りたい場合は他のサイトを探して下さい。 セレクタをグループ化で作るとき .aaa, .bbb {   font-size: 20px;   color: green; } のようにセレクタはカンマ(,)で区切って作る。この場合、セレクタを使うときclass="aaa"とclass="bbb"は同じ設定となる。 それと似た以下のような書き方がある。 .aaa .bbb {   font-size: 20px;   color: green; } こちらはカンマ区切りではなく、半角スペースで区切られている。これはカンマを書き忘れたのではなく、 子孫結合子(Descendant combinator) を用いるときの書き方となる。 子孫結合子(Descendant combinator)とは 子孫結合子とは、セレクタを作るときにいくつかある結合子の中の一つ。子孫結合子によってセレクタを作ると、そのセレクタの有効となる条件も合わせて決まる。条件とは、始めのセレクタが適用されている要素内でその次のセレクタを適用した要素を作ることで有効となる。  上の例で作ったセレクタだとHTMLに <要素1 class="aaa">   <要素2 class="bbb">    子孫結合子のテスト   </要素2> </要素1> と書いた場合に要素2の中で .aaa .bbb のセレクタが有効となる。 どちらか一方だけでは有効とはならない。また順序が逆の場合も有効とはならない。 グループ化の書き方と似ているが、働きは異なるので注意。

gnuplot : プロット結果をデータファイルとして書き出す方法(set table)

gnuplotでデータファイルを書き出す、とは  gnuplotは基本、関数やデータファイルをプロットするソフトですが、その逆でプロット結果をデータファイルとして書き出すという機能もあります。 (実際にはプロットは行われず、plotコマンドによってデータファイルが出力されます) データファイルを書き出す利点  プロット結果をデータファイルとして書き出すことで、何かしらのダミーデータを作ることや、データファイル自体に演算処理をしてそれをデータファイルとして書き出すことなどが出来ます。 データファイルとして書き出す方法 簡単な例  データファイルとして書き出す場合、簡単には gnuplot> set table "output.csv" gnuplot> plot sin(x) となります。これでフォルダ内に"output.csv"というデータファイルが書き出されます。また、この状態のままだとplotコマンドを続けて実行するとデータファイルに新しいプロット結果のデータが追記されていきます。再び通常のプロットに戻る場合は gnuplot> unset table とします。  書き出されるデータファイルは次のような内容となります。 # Curve 0 of 1, 100 points # Curve title: "sin(x)" # x y type -10  0.544021  i -9.79798  0.364599  i -9.59596  0.170347  i -9.39394 -0.0308337  i 方法の解説  基本的には上の例のように"set tabel"の後ろに出力したいファイル名を付けて設定します。このとき、すでに存在するファイルを指定すると内容が上書きされるので注意して下さい。既存のファイルに追記していきたい場合は gnuplot> set table "output.csv" append のように"append"オプションを付けます。 出力結果の解説  出力結果を抜き出すと以下のようになっています。 -10...

CSSの勉強 5 : 各種セレクタについて

 このブログ記事は個人的な勉強のメモ書き、覚え書き程度のものです。内容の正確性などあまり当てにならない面が多いので、ちゃんとしている情報を知りたい場合は他のサイトを探して下さい。 CSSの各種セレクタについて 要素セレクタ <p>や<h1>などHTMLの要素に対して適用するもの。 要素セレクタは要素名としてCSSに記述する。 HTMLファイルの要素に対してそれが適用される。 IDセレクタ ある限定した要素に対してスタイルを適用したい場合に用いる。 使用条件として、一つのページで重複してIDセレクタを用いることは出来ないらしい。 実際、重複して使った場合にどうなるかは分からない。ブラウザ側での解釈次第? よく分からない場合は後述するクラスセレクタを用いるのが無難の模様。 IDセレクタは以下のように名前の頭にハッシュ(#)記号が付く。 #tetete 使うときは <p id="tetete"> idセレクタのテスト </p> のように用いる。 クラスセレクタ ある限定した要素に対してスタイルを適用したい場合に用いる。IDセレクタとは異なり、一つのページで重複しても用いることが出来る。 クラスセレクタは以下のように名前の頭にドット(.)記号が付く。 .momo 使うときは <p class="tetete"> 暮らすセレクタのテスト </p> のように用いる。 また複数のクラスセレクタを要素に適用することも可能。".momo"と".mumu"の二つのクラスセレクタを適用するには <p id="momo mumu"> クラスセレクタ複数使用のテスト </p> とする。

gnuplot : テキストを表示するラベル(label)の設定方法

イメージ
gnuplotのラベル(label)  以下のようにグラフの任意の位置に文字列(テキスト)を表示する場合、"ラベル(label)"という設定を用いることで行ないます。 ラベル設定の例 基本的な使い方 gnuplot> set label "write label" とすれば、x, y座標の原点(0, 0)に "write label" という文字がラベルとして設定されます。あとはグラフをプロットすれば、その位置にラベルが表示されます。  原点以外にラベルを設定したい場合は gnuplot> set label "write label" at -2, 3 のように "at"でラベルを設定したい位置をx, y座標で指定します。 x, y座標以外で位置を指定したい場合は次の解説記事を参考にして下さい。 gnuplot : 各種オブジェクトを配置するときの座標について(Coordinates) 複数ラベルを設定する場合  上記の設定方法では、set labelのコマンドを繰り返して使うと新しいラベルが作られていきます。これでも複数ラベルは設定出来るわけですが、管理するという点では不便です。  そのような場合、ラベルを番号で管理するという方法が使えます。方法は以下のように、"set label" の後ろに1以上の整数で番号を付けます。 gnuplot> set label 1 "text1 label" at -2, 2 gnuplot> set label 2 "text2 label" at 3, 5 gnuplot> set label 3 "text3 label" at 3, 8 設定してあるラベルの確認 どのようなラベルを設定してあるか確認するには次のようにします。 gnuplot> show label ラベルを消去  設定してある全てのラベルを消去するには次のようにします。 gnuplot> unset label  また個別にラベルを消去するには、"s...

スポンサーリンク