Versions Compared

Key

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

Graphing

New Graph Types

...

JIRA

SUMMARY

DESCRIPTION

DETAILS

ORG-24270

Dash line Customization

Define Dash line for applicable plot and graphic object

Click … next to Style dropdown list on Line tab of Plot Details dialog to customize dash line.

Save it for future use.

The dash line definition is saved in graph so it’s fine to share the project with others.

ORG-22642

Percentile symbol edge thickness control in box chart

Add Edge Thickness control on Percentile tab of box chart

The unit is point. This is same as Edge Thickness in scatter plot with Scale by Symbol Size.

ORG-24146

Increment in Line Style dropdown

Add Increment option to Line Style dropdown in Plot Details dialog’s Line tab.

When this option is selected, Line Style List tab will show.

ORG-23126

Box Chart Curved Connecting Line

Add Connect option to all line fly-out of Connect Lines tab, including Connect Mean, Connect Median, Connect Data Points and Connect Percentiles.

Dropdown list of Connect is the same as line plot.

ORG-23379

Wrap tick label improvements for Japanese, Chinese , and Korean characters

Wrap tick label by number of characters no matter there is space between words or not

In the past, the texts are wrapped only when there is space between the words. But for Japanese, Chinese and Korean characters, there isn’t space between words.

In Origin 2022b, if tick labels are Japanese/Chinese/Korean characters, we allow user to wrap text by number of characters only.

System variable @WCJK is added for this. Default is 1. User can turn this off by setting it to 0.

ORG-24597

Image Plot Transparency Support

Transparency support for image plot from matrix data

After creating image plot from matrix data, user can open Plot Details to adjust transparency so multiple images can show in same graph.

For image in matrix window, please first select Image: Conversion: Convert to Data to convert image into data and then plot image plot.

ORG-24680

Align option for multi-line data labeling

Add Alignment Option when turn on data of data plots

Alignment option for multiple-line data label to align to left/center/right on Label tab of Plot Details dialog

ORG-24371

Show scientific notation only at the end

If the option is not none, Axis Tick Label option to show power (scientific notation) will be in just one place.

In Tick Label: Display tab, we add Display Units option under Set Decimal Place.

For 2022b, we support the options for normal 2d only.

ORG-18505

Longer minus sign in tick label

Show long minus sign when creating new graphs

  • page.LongMinus=1 to show long minus sign for tick label in current graph.

  • System variable @TNA=2 to turn off long minus when creating new graph.

@TNA=1 (default) - turn off active data indicator in legend

@TNA=2 - turn off long minus.

@TNA=3 - turn off both long minus and active indicator in legend.

ORG-24692

Context menu improvements on Group tab of Plot Details dialog

Remove unsuitable context menus in Group table of Plot Details dialog

  • When right clicking an increment list row in group table, only show:

    Code Block
    Save Increment List...
    Load Increment List
    Save as System Increment List
    ---------
    Load Palette //only show for color increment row
  • When right clicking header or grey area of group table in group table, only show:

    Code Block
    Nested
    Concerted
    ---------
    Save Theme...
    Load Theme

ORG-24414

Support Fit layout page to objects

Add Fit Page to Objects menu for layout window

  • Format: Fit Page to Objects… menu is added for layout window. pfit2l dialog opens which is the same dialog when choosing Fit Page to Layer for graph window.

  • Labtalk Command

Code Block
page -fit -m 1 -b 5 -u -d 1; 
-m mean margin control: 0 for tight, 1 for border 
-b mean border value as percentage of the page size
-u means undo supported.
-d means fit direction, 0: both directions (default), 1: vertical only, 2: horizontal only

ORG-24284

Format Grid and Frame Border of Graph Table

Support mini toolbar to control table frame and Grids

ORG-25090

Want Flip Colormap MT button for Colormap surface

Support Flip Colormap mini toolbar button in 3D colormap surface and 3D ternary colormap surface

ORG-23298

Edge Transparency by Column and Edge Width by abs(Column)

Add Transparency by Column, and Use Absolute Value option above Transparency option in Line tab, for network plot. Set Edge Width by absolute value.

Select Transparency by Column will change Transparency to 2 options: Minimum Value Transparency(90 by default) and Maximum Value Transparency(0 by default), with Use Absolute Value enable.

ORG-22712

Log Scale Base on Other Value

Add Log base on 1000 formula to custom formula list. Better increment tick position for custom formula.

  1. Add log(x)/log(1000) to Direct formula, 1000^x to Inverse Formula.

  2. For some log scale graph, Increment setting now base on result of direct formula. For example, setting scale as custom formula with direct formula as log(x)/log(1000), direct formula y=0 1 2 should get x =1 1000 1000000. New system variable @CLFT added, default 0, set @CLFT = 1 to apply this change.

Labels and Legend

JIRA

SUMMARY

DESCRIPTION

DETAILS

ORG-24630

Add Labels for Each Layer

Mini toolbar button to add label for each layer of multi-layer graph

In graph with more than 1 layers, click on graph page edge and click Add Label for Layers… button

ORG-21668

Insert image from worksheet cell or image window to graph

Insert image to text object using \cell() and \img() notation

  • For image in worksheet cell, use the following syntax to show it in graph

Code Block
\cell([book1]1!A[1]) = col A, row 1
\cell([book1]1!col(C)[2]) = col C, row2 
\cell(alpha,200) = cell defined by alpha, width=200 logical pixel
\cell(alpha,h=300) = cell defined by alpha, height=300 logical pixel
  • Show Smile Image in Graph

Copy smile image in worksheet cell and then in Graph, add Text, in the text object, right click to Paste Link. Or use menu Edit: Paste Link.

  • Show Image window in Graph

Code Block
\img(Image1) = Image1
\img(Image1,200) = Image1, width=200 logical pixel
\img(Image1,h=300) = Image1, height=300 logical pixel

ORG-23916

Simple Version Symbol Map

Insert Symbol Map provides both Simple and Advanced mode

In in-place edit mode of Text and legend, Ctrl+M or right click and choose Symbol Map.

  • A simpler modeless dialog shows with symbols organized by tabs

  • Combining tab to add accents, etc.

  • Recently used symbol for easy access

  • Uncheck Close dialog to insert multiple symbols

  • Click Advanced to see the old dialog with more options such as change font, unicode, etc.

ORG-24901

Better treatment of none existing substitution notation in text label

Ignore non-existing substitution notation and conditional spacing

  • Set set axis title as %(?Y,@LL) %(?Y,@LD1) (%(?Y,@LU)), which means show Y plot’s <long name> <user-defined parameter1> (<units>)

In previous versions, if user-defined parameter doesn’t exist, it will show <long name> ### (<units>)

In Origin 2022b, it will show <long name> (<units>). //note that extra spaces show

  • Introduced new escape sequence to represent conditional space \sc.

So use %(?Y,@LL)\sc%(?Y,@LD)\sc(%(?Y,@LU)), it will show <long name> (<units>) if no user-defined parameter

ORG-24949

New escape notations to block substitution notation

\h() to block substitution

h should be another form of verbatim e.g. \h(\l(1) %(?Y)) to display literal \l(1) %(?Y)

ORG-24940

New escape to add separator between multi-line text or legend with a smaller line spacing

\sep:50 after cursor as new row. It means add a separator row with vertical space=50% of font height

E.g. in legend box, add \sep:50 to add separator after 2nd line of legend with 50% font height

ORG-24613

Mini toolbar to turn on/off Link to substitution notation of text in graph

Add toggle of setting Link to (%, $) substition level to 1 or 0 on Text object mini toolbar

In the past, if user wanted to add label in graph with metadata in worksheet, or etc., user needs to enter the substitution notation and then go to Programming tab of Text Object Properties dialog to turn it on.

E.g. %(1, @WS) refers to 1st plot’s sheet display name. After entering it as text, user can easily turn the substitution notation on using the mini toolbar.

ORG-24665

Relative Position Improvement for Linked Objects

Relative Position options are added on Position tab of Properties dialog so that when user moves or resizes parent object, the child object follows.

Suppose there is a line object and text object in graph window and their names are Line and Text respectively. (You can go to Programming tab of the Object Properties dialog to check the name)

  1. Run the following Labtalk script to connect two objects. The child object (Text) is linked to parent object (Line).

Line.connect(Text, 0, 17, 0, 35)

2. Right click Text object and open Properties dialog to set relative position to Line object.

ORG-24677

Auto Rotate for Label If Link to Line

When label link to Line/Arrow, support Auto option in Rotate dropdown, label will follow the rotation of the Line/Arrow if select

...

JIRA

SUMMARY

DESCRIPTION

DETAILS

ORG-24518

ORG-24684

Use Origin Rich Text to Cell Notes

Add Origin Rich Text as another Syntax for Notes, and set it as default

  • Besides Markdown, HTML, a new syntax Origin Rich Text is provided for Notes, and it will be set as default syntax for notes window and cell note.

  • Add Notes as Sheet will default using Origin Rich Text to create note sheet.

  • Rename HTML menu to be Notes menu, and provided samples for Origin Rich Text.

  • Context menu for easily added info from worksheet cell, meta data and graph/image window.

  • Context menu for easily added symbol, equation, web link and image when syntax is Origin Rich Text.

ORG-24519

Toolbar buttons for editing Origin Rich Text in More Places

When Notes window with Origin Rich Text syntax, allow to customize format like font, font size, color, .ect with Toolbar.

In worksheet, Insert Notes for cell, also allow In-Place Edit with Standard Toolbar

ORG-23917

Paragraph Style Support in Notes Window

User can write notes, report in Notes window and styles

  • By default Notes window syntax set to Origin Rich Text by default. Right click window title and check Syntaxt node.

  • Right click the paragraph and choose Paragraph Styles. There are many preshipped styles e.g. Body Text, Bulleted List, Numbered List, Heading Left, Heading1, Heading2, Picture. Or user can define styles.

  • Use Tools: Text Style Manager to edit, create new styles and delete styles.

  • Close Origin, delete TextStyles.ini under User Files folder and restart Origin to reset to default settings.

ORG-24838

Improve Notes Window Raw Text Editor

Support moving cursor to matching parenthesis.

Added hotkey Ctrl+K, Ctrl+B and Ctrl+{ to find the matching parenthesis in Note book.

ORG-24846

Preview of Notes window in PE

Mousing over Notes window in PE shows preview

Paragraph style, image, etc. can show fine in Preview of Notes window in PE.

ORG-24845

Allow Notes Window to edit Text in Layout or Graph

Support text object to use text from Notes.

In graph or layout, user can add a text object and enter text “@@@notes1” and this will get string from notes window named Notes1.

In layout, two context menus are provided to easily insert or add note text.

ORG-19339

Font Control for Note Window

Support different font size in different Notes window

Font will be the same in all Notes windows but font size can be set differently in each notes window.

ORG-24920

URL Link support in Notes Window

Clickable URL link in Notes Window

Right click in Notes window and choose Insert: Link… to link to url, help file or labtalk command

Other examples

ORG-24902

Set Notes window page width and display margin

Set Page width (inch) of Notes window and display margin (points)

When syntax is Origin Rich Text,

  • Right click Notes window title and choose Properties (Alt+Enter) and set Page width or use Labtalk property: note.width=

  • Use @NDM = 3; //Notes Display Margin in rendered mode, in points

ORG-24833

Notes Window Printing and PDF, Page Width

Use

Code Block
note.width=

to set the intrinsic width in inches.

If specified, then the Notes window should render to that specified width so if resizing to be wider, empty space should be on the right.

Set to 0 to remove it (default).

ORG-24921

Zoom in and out in Notes window

Zoom in rendered mode of Notes window

Use the zoom percentage toolbar to zoom in and out the notes window.

ORG-24876

Link to external or online image in Notes Window

Link to image file or online image in Notes window to keep Origin project file size small

Use context menu to insert image file or online image to Notes window or text label in graph. Since it’s a link, it will not make project file size big.

Or directly use the following syntax:

ORG-24834

Insert Table in Notes Window

Insert Table in Notes window. A table sheet will be created for editing contents.

Use Insert context menu to insert table in Notes window. \img([NoteTable1]Sheet1) notation will be added.

Go to the corresponding Table worksheet to edit contents and style of the table.

ORG-24747

Paragraph Support with new Origin Text Escape notation

Paragraph Support with new Origin Text Escape notation

ORG-23928

support default font control for different font face

Add a Special Default Fonts dialog to specify default font

Six font face are provided in this dialog.

  • Math Symbol,Arrow/Misc Symbol and Unicode Greek are used to control the font of Math tab, Arrow and Miscellaneous tabs, and Greek and European tabs in symbol map.

  • Other can be escape code for mixed fonts in note window or text object.

for example to use Asian and Western font

syntax: use \f:e(western font) and \f:a(中文字体)

...

JIRA

SUMMARY

DESCRIPTION

DETAILS

ORG-24341

Cell Notes Programming Access

Support accessing cell notes in code

Labtalk

Introduce Labtalk substitution notation @WN to access cell note in text label or legend of graph window. See example below,

Code Block
%([Book1]Sheet1,@WN,B[2]) //cell note in the 2nd cell of col(B) in Sheet1 of Book1
%(1, @WN, 2) //cell note in the 2nd cell of the 1st plot's Y column
%(1X, @WN, 2) //cell note in the 2nd cell of the 1st plot's X column
%(1, @WN, B, 3) //cell note in the 3rd cell of col(B) in the 1st plot's worksheet
%(1, @WN, 4, 5) //cell note in the 5th cell of wcol(4) in the 1st plot's worksheet
%(1, @WN, C) //cell note in the Comment label cell of the 1st plot'Y column
%(1, @WN, B, L) //cell note in the Long name cell of col(B) in the 1st plot's worksheet
%([Book1]1, @WN, col(B)[L]) ==> //cell note in the Long name cell of col(B) in the first sheet of Book1

Python

Code Block
import originpro as op
row, col = 1,1
wks = op.find_sheet()
str = wks.method_str('GetNote', f'{row + 1},{col+1}')
print(str)
t = '\\b(Some Heading)\nAnother line\nYes more'
wks.set_cell_note(row,col,t)

ORG-24701

System Variable to completely disable sparklines

Support disable sparklines by system variable @SPK.

New registry system variable @SPK is instroduced. Default is 0.

  • 0: Default value, as before

  • 1: No new, but opju open as before

  • 2: Can add but opju will be cleaned up on loading

  • 3: Can’t create and opju will be cleaned up on loading

Also, new command “delete -spk;” is implemented to delete all sparklines in current project.

ORG-19905

Support KaTeX

In Notes window, set Syntax as Markdown, input KaTex script and press Ctrl+M to render

ORG-24914

layer object support change XY mapping for matrix

Channel layer object to set XY mapping for matrix object.

Now, user can access XY mapping for a matrix object with following ways,

  • layer.x.from/to, layer.y.from/to (newly support)

  • x1/x2, y1/y2

  • wks.col1.x1/x2, wks.col1.y1/y2

ORG-25082

Labtalk support Copy Graph Page

Add Labtalk function to copy a graph page to the clipboard.

Add page level method page.copy(OLE) to copy a graph page to the clipboard.

ORG-25078

Labtalk dataset assignment support skip hidden rows

Support simple dataset assignment to skip hidden rows

System variable @ASH (default is 0) is added, set it to be 1 to skip hidden rows when do simple dataset assignment.

Example,

Code Block
//suppose col(A) has some hidden rows
@ASH = 1;
dataset ds = col(A); //ds will only contain the visible data rows

ORG-25056

LabTalk getting tree from info binary storage as string

Support getting and setting tree from info binary storage as tring

This is mainly for GeoTIFF image import.

For example, import a GeoTIFF image to new image window, run following script to get and set,

Code Block
tree tr = layer.info.tree$; //get
tr.=;
layer.info.tree$ = tr$; //set

ORG-25156

Labtalk command to prevent Windows sleep when executing script

sec -sn to prevent Windows sleep and sec -sn 0 to allow sleep

Use the following to prevent sleep

sec -sn

Use the following to allow sleep (which is the default state)

sec -sn 0

Python

JIRA

SUMMARY

DESCRIPTION

DETAILS

ORG-24768

Support evaluate FDF in Python

Introuduce a new function to evaluate FDF in Python code, so user can define a fitting function base on it and get a better prerformance.

  • PyOrigin/OriginExt

    Code Block
    EvaluateFDF(FFName, pIndepVarValues, pParameterValues)
  • originpro

    Code Block
    evaluate_FDF(ffname, indepvars, parameters)

ORG-24897

Pip command support checking with package version

Support checking package version with pip -check/-chk1 command

Code Block
pip -check emd==0.4.0;
pip -chk1 emd==0.4.0;

ORG-25082

originpro supports copy graph page

Add function in originpro to copy graph page to the clipboard.

Add page method GPage.copy_page(self, fmt, res=300, ratio=100, tb=False) to copy a graph page as an OLE object or an image into the clipboard.

...

JIRA

SUMMARY

DESCRIPTION

DETAILS

ORG-24646

Turn off mini toolbar for future sessions

View: Mini toolbar checkbox and system variable will apply to future sessions

Uncheck View: Mini toolbar or set system variable @DMT=1 to disable mini toolbar

ORG-24595

Arrange Windows

Customize how to tile/cascade windows in workspace

Window: Arrange Window… menu is added

  • Tile windows into multiple columns based on different sorting orders including window name, PE order, manually activated order, etc.

  • First sort by window type and then sort by window name order.

  • Cascade in each column by check Overlap Each Column

  • Apply and Restore buttons.

  • Save settings as dialog theme for future use.

ORG-22142

Snap Windows

Resizing and Snapping of Windows in Workspace

Window: Snap Windows (Ctrl+F12) menu to turn on/off this feature.

When it’s on, user can drag window to snap it or if windows are tiled or arranged in workspace, it will snap windows in same row/column.

Usage

  1. To snap window to 1/4 or 1/2 of workspace, drag window to border of workspace.

    1. Drag it close to upper border but more to left side, it will snap to the upper-left quarter of space.

    2. Drag it to upper border but the middle part, it will snap to top half of space.

    3. Drag it to upper border but more to the right side, it will snap to the upper-right quarter of the space.

    4. Same applies to left, bottom, right border of workspace to snap to half of space.

  2. To split a snapped window space A with another window B

    1. Drag window B to left side within window A, window A space will be split by B on the left

    2. Drag window B to right side within window A, window A space will be split with B on the right.

    3. Same applies to drag to upper/bottom side within window A.

  3. To switch two window location, press Alt key when dragging.

  4. To put window B to cover window A, drag window B to title bar of window A.

  5. To snap a window to empty space, press Shift key when dragging.

  6. If multiple windows share same border, e.g. after using Tile Vertically, Tile Horizontally or Arrange Windows, mouse over edge of one window will show green border for windows of same column/row. Drag it will resize all of them. To resize only one window, press Shift key and then mouse over to edge of the window to resize.

ORG-24443

Undo deleting of workbook

Ctrl+Z to restore deleted workbook window

Set System variable @WU to disable restore.

ORG-24512

Adjust Apps Icon spacing

Control the horizontal gap between App icons

Click tab or white space in Apps Gallery and choose Apps Icon Spacing…, use the slicer to adjust gap between apps.

System variable @apps to control horizontal gap

@appv is used to set additional vertical gap

After setting it, user can dock Apps Gallery to top of workspace to save space

ORG-24051

Modify all the pre-shipped VI files to add the "Close References" application control

Added Close References to OA_GetColumn.vi

Updated Labview sample files to build-in sample folder.

Can copy these samples to Labview by Tools: Copy Origin Sub-VI LabVIEW vi.lib\addons.

ORG-24702

Option to show Window Preview only when Ctrl key is pressed in Project Explorer

Context menu is added to show window preview only when Ctrl key is pressed when mousing over a window in Project Explorer

In Origin 2022b, Hold Ctrl key for Preview Popup context menu is added in Project Explorer.

When it’s checked, window preview will not show unless hold Ctrl key when mousing over a window in PE.

The corresponding system variable is @PEK. Set it to 1 means it’s checked.

ORG-23943

Adjust windows size and position in Origin according to screen resolution and DPI

Resize and reposition windows to make it display the same layout in workspace in different resolution and DPI.

System variable @SRWS to control

0: old way;

1: fit the width, and scale y with x scale;

2: fit the height, and scale x with y scale;

3(default) : fit the width and height;

In Origin2022b, windows display the same layout in workspace in different resolution and DPI

ORG-20259

Improving for check for update

Inform user about new version of origin is available when check for update

  1. Update menu Help: Check for updates... to Help: Get Help Files/Check Updates

  2. Pop up message box when check for update if new version of Origin is available

2.a select Yes, origin will open web page(https://www.originlab.com/InstallNewVersion ) in browser

2.b select No, Check For Updates dialog will be shown

ORG-24683

Allow directly installation of App from Start Menu

Registered user can directly install app when search from origin start menu

If origin is registered, when searching app in origin Start Menu, user can directly install those apps listed under Apps Category.

ORG-24442

Add Cloud Template to Origin Start menu

show cloud template when user search in Origin start menu

Cloud Template will be shown if there is matched searching in Origin start menu.

if template is already downloaded, click it will open template directly.

otherwise click it will auto download this cloud template

ORG-24738

Allow customization of button to insert OLE object in graph

Allow customization of button to insert OLE object in graph

In Insert Object dialog, add a checkbox Use Current Selection as Default without Opening Dialog (Shift+click to open dialog).

Select this option will not open dialog from next time. But user could still hold shift key to open dialog to change selection or uncheck checkbox. Once this checkbox is selected, 2nd line of button tooltip could be Hold Shift key to open dialog.

This checkbox will be available for “Create New“ choice only, and it will not be saved for the “Display as Icon“ choice.

ORG-24801

Easier way to see folder size

Folder in Project Explorer bottom panel will show size. (Need check “Show Folders“ context menu)

Right click in blank area of bottom panel to show folders in bottom panel.

User can easily view size of folders.

ORG-23458

Support hosting user apps on customer server

Support hosting user apps on customer server

If user have a series in-house use apps, he want to store it in server, and hope origin will get update from his own server, then he may use this feature.

  1. To user this feature, client user should first setup app server path to Origin.ini.

  • Manually Add server path to origin.ini

Code Block
[AppsStorage]
path = \\network\a\b\c\
  • App maker can also add CustomServer key in Package section of package.ini , and Origin will set path key in AppsStorage section of Origin.ini during app installation

Code Block
CustomServer =\\network\a\b\c\

2. Install in-house use app in client origin.

3. Publish higher version app to app server path.

4. Client user will see the update info(red dot) in app icon after restart origin.

5. Right click on app icon and select Download and Install Update to get new version app.

ORG-25158

Data Reader Arrow Key speed up

When Data Reader on large dataset, support hold Ctrl/Ctrl+Shift key to speed up moving cursor

When Data Reader on large dataset, hotkey left/right arrow to move curor to previous/next one

Hold Shift + hotkey right arrow will increment by 5 (Already support in old version), system variable @DRS to control

Hold Ctrl + hotkey right arrow will increment by 15, system variable @DRC to control

Hold Ctrl + Shift + hotkey right arrow will increment by 50, system variable @DRSC to control