Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

TOP FEATURES SUMMARY

  • The following table provides a summary of key new features with brief description, and where to find the feature.
  • Look in sections further below for detailed feature notes.
FeatureBrief DescriptionWhere to find it in Origin
Data Connector
  • Connect to a web file, or a file on your local PC or network
  • File types supported: CSV, Excel, ASCII/Binary (using Import Wizard filters), HTML, JSON, MATLAB, and Origin Projects
  • Select data to be imported, such as specific node in XML, table in HTML, or Sheet in Origin Project
  • Connection and data selection information is saved in worksheet/workbook
  • Add connectors of same type to multiple worksheets in a workbook, and different connector types to multiple workbooks
  • When saving the Origin project, you can opt to leave out the imported data associated with all connectors, or specific connectors. This can help reduce project file size. All calculated results and graphs from results will not be cleared.
  • Re-import data from the source file any time. Make changes to source or to data selection at any time.
  • More data connectors available for download from the App Center or from Data menu.
  • With OPJU, user can bring in one entire sheet from the source OPJU file/webfile.
  • Relative data source path and common data path for all connections in project. 
  • Accessible from the new Data menu (Data→Connect to File and Data→Connect to Web)
  • Also accessible from Connectors tab of Apps Gallary, which is docked on right side of the interface
  • Need to have a workbook/Matrix active

For Data→Connect to Web..., there are sample URLs for various connectors. Click on the Recent URLs menu in the Connect to Web dialog to pick a sample URL.

We have several blogs on data connectors:

http://blog.originlab.com/category/origin-2019b


CSV connect

  • can import both CSV and ASCII data with better auto detection of main header and subheader lines. 

Relative Data Source Path and Common Data Path:

  • If your data are stored under relative folders of project file: Set Data Source relative to Project path. If you move project and data sources together, their relative path is the same. So no update needed in project file. 
  • If there are many data sources under some common path: Set Data Source relative to Common Data Path. The Common Data Path needs to be set only in one Workbook.

LabTalk Access: 

  • wks.HasDC
    • 0 = no connector in book
    • 1 = connector using sheet as destination
    • 2 = connector not using sheet as destination
  • wks.DC.Source$: relative path, web source path
  • wks.DC.Path$: empty if not File path, absolute path
  • wks.DC.Sel$
  • wks.DC.Valid
  • wks.DC.SType: source type
    • 0 = absolute file path, this is the only value that is read-write
    • 1 = project relative file path
    • 2 = common data relative file path
    • 3 = web
  • wks.DC.Allow()
  • wks.DC.Reset(2)  //reset last imported data and label. Final released build will support wks.DC.Reset()
  • wks.DC.Import(): import active sheet, and this is what the Import context menu used, which is now calling to File.ogs [DCImport]

Book Level Import Command:

  • wbook.dc.import() or wbook.dc.import(0) : import all sheets, and this is what the Import All Sheets context menu used, which is now calling to File.OGS [DCImportAll]
  • wbook.dc.Import(1) : for the active sheet, open Select... dialog and then do the import.
  • wks.dc.Import

"doc -e LBC" to loop all sheets on book with Data Connector

  • Example: Loop all sheets with DC and convert data source to Absolute path, books not having connector will be skipped. This will save time since project may have some books with many sheets.
    doc -e LBC { %H=; page.Active=; wks.dc.SType=0; }

Adding DC to workbook using LabTalk:

newbook;
wbook.dc.add("CSV");
wks.dc.source$="C:\temp\T275K.csv";
wks.dc.import();

wbook.dc.add("CSV"); wks.dc.source$=FromURL("http://www.sidc.be/silso/INFO/snmtotcsv.php")$; wks.dc.import();

Import Filter Connector and LT support:
wbook.dc.add("Import Filter");
wks.dc.source$="C:\2016\Samples\Import and Export\S15-125-03.dat";
wks.dc.sel$="test1.oif"; //filter in same folder as data. If in uff\filters, then use wks.dc.sel$="%YFilters\test1.oif";
wks.dc.import();
HTML Reports



    • Use Origin's Notes window to create the report
    • Use Markdown or HTML syntax
    • Copy and paste-link metadata, analysis results, and graphs
    • Support for Placeholder sheet to copy and pre-format results for placement in report
    • Report can be embedded in workbook for use as Analysis Template for batch analysis
    • Report can be printed, or exported as web page with all associated images.

Blog: http://blog.originlab.com/publishing/creating-html-reports-and-documents-in-origin-2019b


With Notes window active, go to HTML→Load Samples menu. You will find both HTML and Markdown samples.

NOTE: If you plan to write your own Markdown syntax, after opening a new Notes window, you need to right-click on title and select the Syntax→Markdown menu item. To switch between HTML and Markdown syntax, you need to first set to Text and then change to the other.

When in Markdown mode, you include html syntax, such as for setting styles, or for advanced formatting not supported by Markdown.

To view a sample OPJU showing HTML+Markdown reports:
Press F11 to open Learning Center. Then select "Analysis Samples" on left, then set the drop-down on right to "General Analysis"
Then select and open the file "Earthquakes - JSON Connector and HTML Report".
This gets data for last week's quakes from USGS and the updated data and graph are put into HTML and Markdown reports.

System variable to control using HTML or Markdown when pressing Ctrl+M

@NPS=0; /// 0 means HTML, 1 means Markdown

Clone current Project
  • Clone the current project by clearing data or clearing both data and operation
  • Maintain Data Connector link to current project from the cloned project
  • After cloning, you can further modify project and then save it for future use.

Menu: File→Clone current Project

This new menu replaces the old menu items File→Save Project without Data... and File→Duplicate Project without Data...

The cloned project can optionally maintain Origin Data Connector connections to the original file.

Exclude Imported Data when Saving Project
  • With ANY data import (not just Data Connectors), user can opt to clear the imported data when saving project.
  • This allows for your "analysis project" to stay small in size. You simply re-import the data, when needed, to perform further analysis
  • Right-click on Workbook, select Window Properties.
  • There is a new check box named "Exclude imported data when saving project."

Blog: http://blog.originlab.com/data-import/exclude-imported-data-when-saving-project

Copy-paste Folders

Copy-paste workbook

Copy an entire Origin Project Folder and paste it within the same project or even to another Origin session running on the same PC

Copy workbook and paste n same session or another session.

  • To copy a folder, right-click on Folder/subfolder in Project Explorer (PE) and select Copy, or do CTRL-C and then CTRL-V
  • To copy a workbook and paste, Right click a book in bottom panel of PE to copy, and right click in bottom panel  of PE to Paste. 


Add Rugs to AxesAdd Rug marks to axes to indicate data density
  • From Plot → Statistics or Plot: 2D, there are Scatter, Histogram, Kernel Density Plot, Box Plot etc.
  • Open Axes dialog. You will see a new "Rug" tab with options
    • Works for multiple plots in same layer
  • Context menu on axis or rugs to copy and paste format
  • Negative size to show rugs plot within axis frame with axis tick labels still stays with axis
Export Worksheet or Book to Excel File..

Added support for exporting multi-sheet workbook as a multi-sheet Excel file.


File: Export: Excel

Sheets can be excluded by right-clicking on tab and selecting "Exclude from Excel Export" context menu

Improved/Reorganized Menus

More first level menus to avoid  too many entries in each menu

  • All Data import related to Data menu.
  • With Graph window active, there is Insert menu to insert all kind of things, such as plot, graphic objects, table, etc.

The Plot menu reorganization

  • Recently Used category on top.
  • Icons have been rearranged so user can see all plot types in same category at once.

Some context menu changes.

  • Last entry in left list renamed as "My Templates" for graph templates user created
  • Template Library icon added to bottom left for quick access
  • Improved Icons
Import Speed ImprovementThe speed of import ASCII and CSV is almost 50% faster. It also applies to CSV connector.

...

JIRASUMMARYDETAILS

ORG-19441

Main Menu Reorganization

  • More horizontal menus.  (Import is removed to a separate menu called Data).

Workbook window active:

Graph window active:

Matrix window active:

Layout window active:

Notes window active:

No window active:

  • Import is removed from File menu and put under Data menu

ORG-19010

Plot Menu Reorganization
  • Easier way  to see all templates in one category.
  • Recently used plot types are listed under Recently Used category
  • User-defined templates show under My Templates category
  • Quick access to Graph Maker and Template Library dialogs.

ORG-19335 S1

Copy and paste folder in Origin
  • Right click a folder in Project Explorer to copy the whole folder.
  • Right click another folder in Project Explorer to paste it there. 
  • Support paste to new session.
  • Support Ctrl+C and Ctrl+V hotkeys.

ORG-19335 S2Copy and paste workbook in Origin 
  • Right click a workbook in bottom panel of Project Explorer to copy.
  • Navigate to the destination folder in Project Explorer in same session or new session
  • Right click in bottom panel of Project Explorer to paste.

  1. ORG-19919
Project name shows at the beginning of Origin title

The information in Origin2019b title bar ordered as Project name - Path - Current PE folder - Origin version - Bit - License Type

If it's an unsaved new project, the order is Origin version - Bit - License Type - Untitled

  • Easier find which is current project name.
  • If multiple Origin opens, easier to use Window taskbar to find correct project to toggle to

ORG-19340

Show column list view of Workbook as tooltip when mousing over workbook in Project Explorer

Set system variable @PEWP=0 to show regular view.


Block docked windows to auto expand when mousing over it

Customer complained Project Explore, Messages Log, etc. windows auto show while he is trying use tools on Tools toolbar which 

System Variable @AHBC is added to control this.

  • Set @AHBC=1 and restart Origin. 
  • Now move mouse on Project Explorer, it will not auto expand. You must click on it to see it. 

ORG-19686

File:Clone Current Project ...

  • Clone the current project by clearing data only, clearing data and operation, or clearing and setting column calculation mode to None.
  • Add Data Connectors checkbox so the cloned project is connected to data in current project
  • After cloning, you can further modify project and then save it for future use.

ORG-19154

Appending Projects Improvements

If user's projects

  • have no windows in root folder
  • contain only 1 subfolder

then when appending project files, and you choose No to not create subfolders for each project,

all windows will be put together to current folder.


ORG-13029

HTML Report in Notes Window 
  • Support HTML and Markdown language in Note window, 
  • Toggle Notes window between Render mode or normal mode (Ctrl+M)
  • System variable to set preferred language when pressing Ctrl+M. @NPS, 0 means HTML, 1 means Markdown
  • Note can be saved/exported to disk including all related elements such as images in a subfolder
  • New HTML main menu with Notes is active, plus context menu on Notes window title. Main menu has "Load..." with pre-shipped samples.
  • It will auto detect if the loaded file is HTML or Markdown
  • Support print HTML Style Notes window
  • HTML code can link to graphs, worksheet cells, string registers, etc either directly or using a Placeholder worksheet

HTML field codes:

  • Direct Links
    • {{str://%X%G.opju}}   -- current project name
    • {{cell://[Book1]Sensor01!B[4]}}  --- B4 value in Book1, Sensor01 sheet.
    • <img alt="{{graph://Graph1}}"width="500">
    • {{table://sheet1!}} — sheet1 or current book, {{table://[Book1]FitNL1!Parameters}} — parameters table of fitting result sheet FitNL1 in Book1  
  • Placeholders, like {{SlopeValue}}. Right click Notes window title and choose Edit Placeholder... to open the worksheet. Follow instruction there
 ORG-19156Recently Used Fonts 

Recently used fonts show on the top of the font dropdown list

Fixed some bugs when typing to find fonts

ORG-19339

Font control for Notes windowChange Font and Font Size from Format toolbar for Notes window. It applies to all Notes window.

ORG-19117

Reset all dialog custom positions on new Origin session

There are cases user moved some dialog, script window, etc. to other location .e.g. another monitor and when restarting Origin, user couldn't find them.

So in Origin 2019b, by default the dialog locations will reset. 

Set System variable @RDP=0 to go back to old behavior.

ORG-19068

Copy cell and paste to a range

E.g.

Select A1 cell and copy (Ctrl+C). Select B1-B3 and paste. B1 -B3 will be filled with A1 value.

Select A1 - A3 cells and copy (Ctrl+C). Select B1-B6 and paste. B1-B3 will be filled with A1-A3, B4-B6 will be filled with A1-A3.


Set System variable @CPNB=0 to roll back to old behavior.

ORG-19141

Reorganization of some controls on Layer level of Plot Details dialog
  • Rename Display tab as Display/Speed tab. 
  • Scale Elements moved to Size tab.

ORG-18726

Group Folder Sharing Improvements
  • Set an Origin as group leader of multiple groups from Preferences: Set Group Folder Location... menu

 

  • Easier way to publish different files to different groups from Preferences: Group Folder Manager menu

  • Set an Origin as group member for multiple groups

  • For App (OPX) files published, it will auto install immediately after group member gets the file. No need to restart Origin.

ORG-19685

Easier way to update all Apps to latest version

User can right click the Add Apps icon in Apps Gallery and choose Update All to updates all installed Apps to latest version.

ORG-16009

Sort Apps in Apps Gallary

Sort apps by alphabetic order, newest, oldest

ORG-19333

Support search in Template libraryUser can type keyword in upper-right corner of Template Library dialog to search for user-defined graphing templates.

ORG-19661

Plot: 3D: Parametric Surface menu to plot 3d parametric plot from dataData needs to be organized in z, x, y, z(optional) matrix objects order in Matrix

...

JIRASUMMARYDETAILS

ORG-18180

Multi-sheet range support

This is supported in many tools that supports multi-sheet range.

E.g. if user wants to do statistics in same range of data on multiple sheets, user can specify the input as [book1](1:5)!1[89]:17[95]

  • If it's not consecutive sheets, then what should be the syntax, (1, 3:5)!
  •  together with options in Input node "Combined as Single Dataset", user can get statistics of same range in different sheets easily.


ORG-19433

Improvements on IF() and IFNA() functions
  • Fixed if(C=0,A,"") and C==0? A:"" issue of only filling 1st occurance of true condition.
  • Default else to blank. E.g. fill column A with 1, 2, 3 and enter if(A=2,100) in column B's F(X), row 1 and 3 should be blank values instead of missing.
  • IF() supports both numeric and string return. E.g. if(A<5,"small","big") works. In 2019, user needs to type if(A<5,"small","big")$

ORG-19284

New Object is wbook but can be abbreviated as wbk

ORG-19715

LabTalk string function improvements
  • IsEmpty() will give 1 for range out of bound. E.g. column A has text in 1st 4 rows only. In column B, enter formula IsEmpty(A) for rows from 1 to 10. row 5-10 will be filled with 1.
  • When concatenating two string columns, use longest data to set the range. E.g. if there are 5 rows of data in column A, while 10 rows of data in column B. Set column C's formula as A$+B$.  Origin uses the 1st vector to decide the calculation range so only 1st 5 rows was conconcated. Origin 2019b, usea the longest rwo to decide range. To go back to old behavior, which used the first vector i2, set @VAS=0
ORG-19719New Switch for DOC command
  • doc -rn: Make current project as Untitled and new project
  • doc -e WM: Execute for all workbooks and matrix books in the project
  • doc -e LBC: Execute for all sheets on book with Data Connector
ORG-19719LabTalk command to clear imported data

del -di: Delete imported data in current sheet

ORG-19719Improvement on Project class
  • New control bit adds to GetPath member

The following will get empty for Untitled, and if has path, will not have last backslash

Code Block
languagecpp
string strProjPath = Project.GetPath(PROJ_PATH_NO_ENDING_SLASH|PROJ_PATH_UNSAVED_EMPTY);
  • Get PE tree

This is mainly to allow easy changing code to generate the tree for Origin Connector, which orglab is making the call to get display tree.

Code Block
languagecpp
Tree tr;
Project.GetTree(NULL, tr);
out_tree(tr);


ORG-16946OC to provide access to LabTalk LT properties on OriginObject
  • GetProp
  • SetProp

Example,

Code Block
void MyTest(int ntype = 0)
{
	Worksheet wks = Project.ActiveLayer();
	string strName;
	double vv;
	wks.GetProp("name", strName);
	wks.GetProp("ncols", &vv);
	printf("Current sheet is %s, contains %.0f columns.\n", strName, vv);
	wks.SetProp("LongName", "My Data"); //set worksheet long name
	
	string str;
	if(0 == ntype)
		wks.GetProp("dc.Source", str);
	else if(1==ntype)
		wks.GetProp("dc.Path", str);
	else
		wks.GetProp("dc.Sel", str);
	printf("Data Connector source: %s.\n", str);
}


ORG-19198

Code Builder Improvements for Apps
  • Context menus to exclude files and load dependents at App Folder level
  • Context menu on OGS file to run its Main section.
  • Context menu on file level to load dependent files to TEMP folder

ORG-18480

Build new Python package OriginExt to access Origin functionality from external Python through COM.OriginExt is a Python package that enables you to access Origin functionality from Python. OriginExt is built on Origin's COM/Automation interface that Python functions as the client application that connects with Origin. It allows exchange data back and forth between Python and Origin and can also send commands from Python to be executed by Origin.

ORG-19831

OrgLab Worksheet::GetData() Inconsistent with Column::GetData() and MatrixObject::GetData()

Added the optional argument lowbound to the COM server's method Worksheet::GetData():

OODL_PREFIX_METHOD(ODISPID_WKS_GETDATA)	HRESULT GetData([in, optional] VARIANT nRowStart, [in, optional] VARIANT nColStart, [in, optional] VARIANT nRowEnd, [in, optional] VARIANT nColEnd, [in, optional] VARIANT format, [in, optional] VARIANT lowbound, [out, retval] VARIANT * RHS);

Installation and Licensing

...