HTMLおよびMarkdownレポート


Origin 2019bから、ノートウィンドウは通常の編集モードレンダリングモードの2つのモードをサポートしています。 ノートウィンドウでHTMLまたはMarkdown構文に基づいてレポートを編集すると、レンダリングモードでレポートを表示できます。レポートでは、Originグラフ、行列の画像、分析テーブル、および任意のワークシートセルを参照できます。ソースが変更されると、ノートウィンドウにリンクされた項目も更新されます。このレンダリングモードでは、ノートウィンドウを解析レポートとして使用することも可能です。

レンダリングモードへの切り替え

ノートウィンドウのデフォルトモードはテキストモードです。レンダリングモードに切り替えるには、次の4つの方法のいずれかを使用します。

  • メニューからメモ: レンダリングモードを選択します。
  • ノートウィンドウのタイトルを右クリックしてレンダリングモードを選択します。
  • アクティブなノートウィンドウで、Ctrl + Mホットキーを押します。
  • 次のLabtalkスクリプトを実行
note.view=1;
Notes: ノートウィンドウでMarkdown構文を使用する場合は、レンダリングモード変更する前に、構文をMarkdownに変更する必要があります。


ノートウィンドウの構文

ノートウィンドウでは、編集モードのデフォルトは構文オプションとしてプレーンテキストが表示されます。HTMLまたはMarkdown構文で編集する場合、構文オプションを変更します。HTMLは色付けされたHTMLシンタックスを表示しますが、MarkdownシンタックスはMarkdownシンタックスがレンダリングモードを識別するのを助けます。

構文オプションを切り替えるには、次の方法を使用します。

  • メニューからメモ: シンタックス: テキスト / Originリッチテキスト / HTML / Markdown を選択します。
  • ノートウィンドウのタイトルを右クリックして、シンタックス: テキスト / Originリッチテキスト / HTML / Markdownを選択します。
  • 次のLabtalkスクリプトを実行
note.syntax=0; //テキストに切り替え
note.syntax=1; //色付きHTMLシンタックスに切り替え
note.syntax=2; //Markdownに切り替え
note.syntax=3; //Originリッチテキストに切り替え

行番号を表示

ノートウィンドウが編集モードのときは、HTML: 行番号を表示で行番号を表示できます。

セル値、Originオブジェクト、文字列、変数のリンクを挿入

次の2つの方法のいずれかを使用して、グラフとワークシート、セル値、表、行列、文字列、および変数を、アクティブなノートウィンドウに追加できます。

HTML Add Menu.png
  • メモ:リンクを追加 メニューを使用する。
  • 次の構文を使用して、オブジェクトを手動で挿入します。
{{type://notation}}

次のリンクタイプがサポートされています。

タイプ 表記 説明 サンプル
graph グラフウィンドウの名前 グラフウィンドウを画像(.svg)として挿入します。 Note: 挿入した画像に.PNGスタイルを使用する場合は、システム変数@NLS=0に設定します。 <img alt="{{graph://Graph1}}" width=400>
matrix 行列ウィンドウの名前 行列画像を挿入します。画像(jpg / png / bmpなど)をノートウィンドウにドラッグアンドドロップして挿入することができます。対応する行列ウィンドウが作成され、シンタックスがノートに自動挿入されます。 <img alt="{{matrix://matrix1}}">
cell セルの範囲 ワークシートのセルの内容を文字列として挿入します。
構文は[book_name]sheet_name!column_name[row-index]です。
{{cell://[book1]1!B[3]}}
table テーブルの範囲 HTMLテーブルとして(レポートシートから)ワークシート、表、セルを挿入します。
シンタックスは
[book_name]sheet_name! です。
または
[book_name]sheet_name!table_nameです。

{{table://[Book1]Sheet1!}}
{{table://[Book2]FitLinear1!Parameters}}
{{cell://[HiddenPeaks]FitPeaks1!Parameters.Footnote}}

str 文字列のLabTalkスクリプト 文字列を挿入するには、Labtalk 文字列レジスタの例があります。

{{str://mystring$}}
{{str://%G}} (現在のプロジェクト名を表示)
{{str://%@F}} (現在のプロジェクトエクスプローラフォルダ名を表示)

var 変数のLabTalkスクリプト 変数を挿入

{{var://system.path.program$}} (プログラムフォルダパスを表示)
{{var://[Book1]!page.info.SYSTEM.IMPORT.FILENAME$}} (インポートされたファイル名を表示)


  1. コピーおよびリンクの貼り付けを使用して、Originオブジェクトを挿入できます。ノートウィンドウがテキストモードのときは、Originオブジェクトをコピーしてからノートウィンドウでリンクの貼り付けでシンタックスを挿入できます。
  2. ノートウィンドウがレンダリングモードに切り替わると、ノートにグラフが挿入されたときにグラフの画像ファイル(.png)が生成され、画像タグがpngパスに置き換えられます。グラフが更新されると、それに応じてノートウィンドウも更新されます。


プレースホルダを使用してリンクを挿入

ノートウィンドウでは、プレースホルダを使用してリンクを挿入することがサポートされています。これらはHTMLという名前の特別なワークブックであり、プレースホルダとリンクをリストします。

プレースホルダがリストされたワークブックを開くには

  • メニューからメモ: プレースホルダーを編集を選択します。
  • メニューのHTML: プレースホルダーを編集...を選択します。


ワークブックの最初の列はプレースホルダーの名前で、2番目の列のセルはリンクの内容を示しています。セルに変数とグラフを挿入し、次の構文を使用してノートウィンドウにプレースホルダを挿入します。

{{Placeholder}}


プレースホルダワークシートにリンクを追加するには

  • コピーリンクの貼り付けでこのワークシートの2列目のセルにOriginオブジェクト、文字列、および変数のリンクを追加できます。

または

  • 2番目の列のセルを右クリックし、グラフを挿入...または変数の挿入...でリンクを挿入します。

LaTeX式を挿入

LaTeXの式を挿入するには、

  • ノートウィンドウで右クリックし、MathJaxスクリプトの挿入を選択します。

これにより、MarkdownおよびHTML構文でLaTeX表記をレンダリングする次のMathJaxスクリプトが挿入されます。

<script src="http://olab/resource/ProgramData/OriginLab/JS/MathJax/config.js" defer></script>
<script type="text/javascript" id="MathJax-script" src=
"http://olab/resource/ProgramData/OriginLab/JS/MathJax/tex-svg.js" defer></script>

LaTeX 式の挿入の例を参照するには、メモ:サンプルのロード:LaTeX Equations.html(md)メニューを選択してください。

レポートのサンプル

メニューからメモ: サンプルのロード...を選択して、いくつかのビルドサンプルを参照できます。

ここでは、HTML、プレースホルダ付きHTML、Markdownによる線形フィット結果レポートを作成しています。その違いを比較できます。

まず、分析を準備する必要があります。新規プロジェクトを作成し、データ<Origin installation folder>\Samples\Curve Fitting\Sensor01.datをBook1にインポートします。ウィンドウのショートネームをSensor01に変更します。ワークシートを選択状態にして散布図を作成します。デフォルト設定を使用して線形フィット(解析:フィット:線形フィット)を実行します。

例1: HTMLレポートを作成する

  1. 新規ノートウィンドウを作成し、次の構文を入力
    <html>
    <head>
    <style>
    	td {
    		text-align: center;
    	}
    </style>
    </head>
    <body>
    	<h1 style="color:#4285F4">Linear Fit Report</h1>
    	<b>File Information:</b></br>
        <table class="origin-table centered" width="400px" >
        <tr>
            <th>File Name</th> 
            <th>Fitting Equation</th>    
        </tr>
         <tr>
            <td>Sensor01</td> 
            <td>{{cell://[Sensor01]FitLinear1!Notes.Equation}}</td>
        </tr>
        </table>
    	</br>	
    	<b>Fitted Parameters & Statistics:</b></br>
        <table class="origin-table centered" width="700px" >
        <tr>
             <th>Intercept</th>
             <th>Slope</th>
             <th>Degrees of Freedom</th>
             <th>R-Square (COD)</th>
             <th>Adj. R-Square</th>
        </tr>
        <tr>
             <td>{{cell://[Sensor01]FitLinear1!Parameters.Intercept.Value}}&#177; {{cell://[Sensor01]FitLinear1!Parameters.Intercept.Error}}</td>
             <td>{{cell://[Sensor01]FitLinear1!Parameters.Slope.Value}} &#177; {{cell://[Sensor01]FitLinear1!Parameters.Slope.Error}}</td>
             <td>{{cell://[Sensor01]FitLinear1!RegStats.C1.DOF}}</td>
             <td>{{cell://[Sensor01]FitLinear1!RegStats.C1.RSqCOD}} </td>
             <td>{{cell://[Sensor01]FitLinear1!RegStats.C1.AdjRSq}}</td>
        </tr>   
        </table>
    	</br>
    	<img alt="{{graph://Graph1}}" width=350>
    </body>
    </html>
  2. ウィンドウのタイトルを右クリックしてシンタックス: HTMLを選択します。
  3. 再度ウィンドウのタイトルを右クリックしてレンダリングモードを選択します。このようなレポートが表示されます。
    HTML Report 01.png

例2: HTMLレポートのプレースホルダー挿入リンクを使用する

  1. 新規ノートウィンドウを作成し、次の構文を入力
    <html>
    <head>
    <style>
    	td {
    		text-align: center;
    	}
    </style>
    </head>
    <body>
    	<h1 style="color:#4285F4">Linear Fit Report</h1>
    	<b>File Information:</b></br>
        <table class="origin-table centered" width="400px" >
        <tr>
            <th>File Name</th>  
            <th>Fitting Equation</th>    
        </tr>
         <tr>
            <td>Sensor01</td>  
            <td>{{Fitting.Equation}}</td>
        </tr>
        </table>
    	</br>	
    	<b>Fitted Parameters & Statistics:</b></br>
        <table class="origin-table centered" width="700px" >
        <tr>
             <th>Intercept</th>
             <th>Slope</th>
             <th>Degrees of Freedom</th>
             <th>R-Square (COD)</th>
             <th>Adj. R-Square</th>
        </tr>
        <tr>
             <td>{{Intercept}}&#177; {{Intercept.Error}}</td>
             <td>{{Slope}} &#177; {{Slope.Error}}</td>
             <td>{{DOF}} </td>
             <td>{{R-Square}} </td>
             <td>{{Adj.R-Square}}</td>
        </tr>   
        </table>
    	</br>
    	<img alt="{{FittedCurve}}" width=350>
    </body>
    </html>
  2. ノートウィンドウのタイトルを右クリックしてシンタックス: HTMLを選択します。
  3. メニューのHTML: プレースホルダーを編集...を選択してワークシートを開きます。 最初の列にプレースホルダ名を入力します。フィット結果のリンクをコピーして2列目に貼り付けます。
    Placeholders Worksheet.png
  4. ウィンドウのタイトルを右クリックしてレンダリングモードを選択します。例1と同じレポートを得ることができます。

例1のHTML構文と比較して、例2のように、プレースホルダを使うことでHTMLを単純化するのに役立ちます。

例3: Markdownレポートを作成する

  1. 新規ノートウィンドウを作成し、次の構文を入力
    # Linear Fit Report
    **File Information:**
    |File Name|Fitting Equation|
    |--|--|
    |{{File.Name}}|{{Fitting.Equation}}|
    
    **Fitted Parameters & Statistics:**
    |Intercept|Slope|Degrees of Freedom|R-Square (COD)|Adj. R-Square|
    |--|--|--|--|--|
    |{{Intercept}}&#177;{{Intercept.Error}}|{{Slope}} &#177; {{Slope.Error}}|{{DOF}} |{{R-Square}}|{{Adj.R-Square}}
    <img alt="{{FittedCurve}}" width=350>
  2. ノートウィンドウのタイトルを右クリックしてシンタックス: Markdownを選択します。
  3. メニューのHTML: プレースホルダーを編集...を選択してワークシートを開きます。 最初の列にプレースホルダ名を入力します。例2のステップ2のように、フィット結果のリンクをコピーして2列目に貼り付けます。
  4. 再度ウィンドウのタイトルを右クリックしてレンダリングモードを選択します。

例1のHTML構文と比較すると、Markdown構文は編集しやすいですが、HTMLの特殊なスタイルには対応できません。