Origin 2021b Features
Graphing
New Graph Types
JIRA | SUMMARY | DESCRIPTION | DETAILS |
---|---|---|---|
Grouped Marginal Plot | Plot different kinds of marginal plot with grouped data with highly customizable main, top and right panels. | Plot: Statistics: Grouped Marginal … to plot different kinds of marginal plot. | |
Network Plot | Network plots show interconnections between a set of entities. | Plot: Categorical: Network Each entity is represented by a Node and connections between nodes are represented by links. Further customize to node and links are available in Plot Details dialog. | |
Durov Plot | An alternative to the Piper Diagram to demonstrate the relationship between various ions within hydrochemical samples | Plot: Specialized: Durov | |
Stiff Diagram and Stiff Map | A graphical representation of chemical analyses to illustrate relative ion concentrations for multiple samples. | Plot: Specialized: Stiff and Plot: Specialized: Stiff Map Special point is supported for these two plots. You can also select special point in Stiff Map and move it. Leader line is supported between label and point. | |
ORG-22542 | Ribbon and 100% Ribbon Chart | Connect stacked bars or 100% stacked bars by ribbon | Plot: Categorical: Ribbon and Plot: Categorical: 100% Ribbon.
|
ORG-23127 | Extended Graph Templates | More than 30 extended graph templates are added in Origin 2021b’s Template Library to extend Origin’s graphing capabilities. | Choose Plot: Template Library and check Extended checkbox to see all of them. Mouse over to see what it’s for and data required.
|
General
JIRA | SUMMARY | DESCRIPTION | DETAILS |
---|---|---|---|
Improved Template Library Dialog | Redesigned Template Library dialog with more controls |
| |
New Plot Highlight mode by just moving cursor | User had to click on a plot to select it to fade away other plots by default. If this mode is turned on, User just need to mouse over a plot to highlight it. No need to click on plot. |
| |
Simplified Export Graph as Image tool | Simpler tool to export active graph to PNG (default), BMP, JPG and TIF | File: Export Graph as Image… to export active graph with less controls. User can still choose File: Export Graph… to export multiple graphs or customize advanced settings as before. Context menu of graph title and graph window updated to show this one instead of the old Export Graph… dialog. | |
| Data Slicer in Graph | Control filter conditions in Graph | Use Data Slicer button on graph page level mini toolbar to toggle it and change conditions. Right click to hide/disable/change filter style. Note: It will change filter in the corresponding column as well.
|
Undo of deleted graph | Ctrl+Z after deleting a graph window | System variable @GU=0 to turn off the feature | |
Insert image background | Easier way to add an image background in a graph | Choose Insert: Image from Files… or right click in graph and choose Image from Files. You will be asked if u want to insert the image as layer background. Use LabTalk command to specify image above or behind the existing background: layer.bib = 1; //background Image Behind | |
Insert Map to Graph | Applicable map(s) show under Insert menu |
| |
New Merges Graphs to Layout | Graph: Merge Graphs to Layout… menu loads a simpler X-Function dialog to stitch graphs into layout window with page size kept | Stitch multiple graphs into layout with page size kept for graph export or copy it as picture to other applications.
doc -s;doc -n;
for(ii=0;ii<=5;ii++)
{
run.section(Standard,NewGraph);
}
mg2layout option:=folder col:=6 row:=1 xgap:=10; | |
ORG-23326 | Copy Coordinates from Data Reader, Screen Reader, Data Tooltip | Copy coordinates and paste column wise to other places | Mouse over data point in graph, data point tooltip shows. Right click and select Copy Coordinates will copy X, Y, or X, Y, Z coordinates Such context menu also shows in Data Display and Data Info window when using Data Reader or Screen Reader.
|
Replace Increment Editor with Build Colors Dialog | When editing color list from Plot Details dialog, use Build Colors dialog instead of Increment Editor. | New Build Colors dialog has more options when creating color list. Therefore we use it by default in places when editing color lists. Such as from Plot Details dialog or from Color Manager dialog. Use system variable @DICE=0 to roll back to the old Increment Editor. | |
ORG-23013 | New Palette and Color List for Temperature Warming | We add Warming.oth, Warming.pal and BuRdYl.pal Surface.pal to build. Besides, we can merge new system color info into User File Folder on installing | To merge new system color info into UFF:
|
ORG-22720 | Install Latex when using Insert Equation button | Click the button will help user to install and use Latex app | It required Mathtype or Microsoft’s Equation editor installed on the PC and use it. For user who wants to use Latex, they must install Latex App and use from Apps gallery on the right. In Origin 2021b, clicking Insert Equation toolbar button will give user the option to install Latex to use or continue with old behavior. |
Send Graphs to Powerpoint launches APP | Send Graphs to Powerpoint launches APP instead of the old x-function | Send Graphs to Powerpoint App is preshipped in Origin and it works better than the old X-Function. So Origin 2021b is updated to call the App in all places. | |
ORG-21186 | Improved asterisk bracket | Customize shape, rotation and style of asterisk bracket |
|
ORG-22820 | Support saving plotting scripts into Graph Template | We add the following key into template | Example:
|
ORG-23052 | Add template info into the Apps XML - Template Saving part | Save Additional information in Graph Template with @RBA=1 |
|
Support Log Scale for Histogram bin | Add Log10, Ln, Log2 scale type in Plot Detail dialog’s Data tab. |
| |
Support overlapping and skewed histogram | Histogram can be overlapped and skewed |
| |
Add By Point tab for distribution curve | Add By Points control for distribution curve colors. If user plot multiple distribution curve with overlapped panel, they could set color index to panel column. |
| |
Plot Color based on Positive Negative - Anomaly Plot | Y Value: Plus Minus option is available for line color, symbol color(including symbol edge, symbol fill color) and pattern fill color (when there is fill under curve, and type is Normal and Fill to Base). | With the change, you can make Positive Negative - Anomaly Plot by setting line color/bar’s fill column as By Point: Y Value: Plus-Minus Color. | |
Zoom in graph with isomtric or linked axis scale | Press shift key to disable aspect ratio when zooming | In the past, user can only keep aspect ratio to zoom in in graph with isometric or linked axis scale. Now in 2021b, user can press Shift key and zoom in with aspect ratio ignored. | |
Browser Graph Improvements | A number of improvements and new features were added to browser graphs | General Improvements:
Multi-layer Browser Graph Improvements:
Browser graph for Image and Contour Plot: Turn on Browser panel by page level mini toolbar. Then flip images on same matrix sheet. User can edit the metadata on left panel Common Z Scale is used by default for all matrices in the layer. | |
Stack by lines by Offset in Column label row (metadata) | If there is numeric value in each Y column label rows such as comments, etc., user can plot stacked line based on offset in such column label rows | In Plot Details dialog, choose Layer node and go to Stack tab.
| |
Contour Plot Contour line and label Improvements | Hotkey to select contour line and better way to positon labels to avoid being cut off by layer boundary. | Hotkey to select contour lines:
Support Show Contour mini toolbar when clicking on label. Better control of labels close to or outside the layer boundary, system variables to control labels outside of frame:
Add Reposition Labels button on mini toolbar since otherwise label improvements will not apply to existing graphs unless a scale change is triggered via LabTalk such as: x1=x1 | |
ORG-23083 | Common Colormap for Multi-layer contour graphs | Common Colormap is supported for Multi-layer contour graphs. Union scale range will be used for all layers. |
|
Sub-Pie/Column label Sums up to 100 | Label Sub-Pie/Column so sub-pie/colum adds up to 100. | On Labels tab, when Percentage is set as Individual, sub-pie or column will adds to 100%.
| |
ORG-22742 | Better support Add Stats Reference Line Mini Toolbar for trellis plot | Using layer level mini toolbar to add statistics reference line for trellis plot, now the stats reference line in sub-panel means the stats of the corresponding sub-panel | Expression is Mean(plotdata(*-, Y, h, v)) to limit to panel |
Color Axis Title by Plot Color | Add context menu: Text Color Follows Plot for axis title | Add context menu: Text Color Follows Plot for axis title just like the similar context menu for legend | |
Rotate and Shear Contour Plot | Change Angle between axes and Start Angle for X Axis | Controls are on Display/Speed tab of Layer level of Plot Details dialog. Labtalk Support layer -PGM 1; //enable skew
layer.SKEWANGLEB=; //angle between axes
layer.SKEWANGLEX=; //beginning X angle
layer -PGM 0; //disable skew
| |
Copy Coordinates | Context menu to copy data point coordinates in graph | When mousing over data point, data point tooltip shows. User can right click in the yellow tooltip and choose Copy Coordinates. This is also supported in Data Info. and Data Display window when using Data Reader, Screen Reader We don’t support copy text or categtorical X, so instead the corresponding 1, 2, … will be copied.
| |
Keep Layer size when merging graph windows | In Merge Graph windows dialog, Auto is added under Page Setup->Orientation to keep layer size when merging graph windows. | When Orientation=auto, default Gaps is 2, Margins is 5. When linked layer is 100% overlapped, Orientation=Auto mode supports Treat Each Source Graph as a Unit. When source graphs' layer >1, and it is not 100% overlapped linking, It is not supported when Page Setup: Orientation is Auto. | |
Put Unit to 2nd Line of Axis Title | Axis title will show in 2 lines, 1st line with long name, 2nd line with units of the plot | On Axis tab of Preferences: Options dialog, add Units in 2nd line option.
| |
ORG-23278 | Contour Finding Max/Min in current domain | We can find min and max in current XY range | make contour plot from a matrix, scale in to a small area, then click contour to open MT to rescale colormap Note: |
Batch plot with column offset | Add batch plot with column offset mode for batch plotting | Batch plot with column offset mode means plot columns in source graph with column offset. Column Offset: specify the offset value from source column to target column for example, source graph is scatter plot with Y column D&E, column offset = +2 means new plot columns are F&G, column offset =-2 means new plot columns are B&C. if column offset=+2 and number offsets=3 for source graph with B&C means new plot columns are D&E, F&G, H&I when user has many books with same column structure, and make a graph using columns in different books. if user want to make plot using other column of all these different workbooks, batch plot with column offsets can handle this well.
| |
Copy Graph as Image can use Raster by default rather than Vector | When using Copy Graph as Picture from Edit menu, now can use DIB type raster image by default rather than EMF by setting @CPRO=0 . | vector image can be disabled via:
If DIB is too large, performance will suffer or will be unable to paste. You can lower the size of the DIB via:
System variable . It is the system variable for tweaking the DIB size reduction as a fraction from default (should be > 0 and < 1). Ctrl+C works to copy page and paste to another applications. | |
Multiple Panel by Label support user-defined template | Add an option template to plotting xf: plotbylabel (Multiple Panel by Label) and plot_gboxindexed (Grouped Box Charts - Index Data) | You can select a user-defined template or build-in template via control or LabTalk. | |
ORG-23483 | Support Data Reader hittest on 3D line | Support Data Reader on 3D scatter when only has connect line | When plot 3D scatter, check Connect Symbol and set the symbol size as 0, the Data Reader tool now support |
Ease of Use
JIRA | SUMMARY | DESCRIPTION | DETAILS |
---|---|---|---|
ORG-22601 | Legend mini toolbar improvement | Data Plot Legend Translation Mode button (Legend Translation Mode in 2021) improvement |
|
Active Layer Indicator Mini Toolbar button | New button on graph page level Mini Toolbar triggers the active graph layer indicator. | Note same behavior may be triggered by setting the
| |
ORG-22993 | More layer mini toolbar buttons | Isometric, Transparency, and Hide Others buttons on layer level mini toolbar |
|
Mini toolbar button to add Linear fit curve, confidence band, prediction band, etc. | Mini toolbar button is added when clicking a plot to add linear fit curve, confidence band, prediction band, confidence ellipse (mean), confidence ellipse (prediction) | For Grouped plot, the mini toolbar button shows on Single tab. | |
ORG-20492 | Mini toolbar for 3D Graphs | Mini toolbar for different 3d plots, axis, layer and page | Popup buttons when clicking on plot, axis, layer or page for easier customization. Note: For group of plots, 1st click will select group plot. The popup shows two tabs. One is Group tab to customize the whole group. The other tab is Single plot to customize that plot only.
|
Mini toolbar for layout page | Simplified mini toolbar to only show those related to layout page, such as Slide View and Graphs Selectable toggles |
| |
Create horizontal vertical line with SHIFT key | Follow major software on perfectly horizontal vertical line with SHIFT | We already supported press shift key when creating or dragging line to create horizontal and vertical lines. But when drawing one end of line object, press SHIFT key and let mouse go didn’t change line to be perfectly horizontal or vertical, as how it works in Powerpoint, etc. We improved it so it works as well in Origin. More support press Ctrl+Shift to enter the mode to move the point along the original line. | |
ORG-23217 | Zoom In/Out in Data Reader Mode | Support Zoom In/Out in Data Reader mode | Hotkey Ctrl+ Mouse Wheel to Zoom In/Out while in Data Reader Mode, this provides an easier way to data reader in a small/large region. |
ORG-23139 | Font Size in Toolbar | Keep the same font size between in-place editing mode and text box if highlight all and set font size | When highlight all and set text font size, both in-place editing mode and text box show the same font size, before Origin2021b, in-place editing mode updated but if select the text box, the font size in Tool Toolbar keeps its original value. |
Easy way to go to plot’s corresponding column | Right click a plot and choose Go to Book context menu | Right click a plot and choose Go to Book context menu. The worksheet will be activated with corresponding column highlighted. | |
Better way to go to source data sheet from special point | Right click special point and choose Go to Book context menu | Right click a special point in graph and choose Go to Book context menu. the Origin will scroll to corresponding row of yhe corresponding highlighted column | |
ORG-23450 | Matrix Contour Plot Ease of Use improvement | Check matrix units to set isometric, increase speed mode |
|
Graph Customization
JIRA | SUMMARY | DESCRIPTION | DETAILS |
---|---|---|---|
Transparency for Fill Only | Support transparency for fill only in plot and graphic object | For scatter, bar, fill area, box, etc. graph, Transparency for Fill Only checkbox is added on Pattern tab so border will not be transparent. Same checkbox is added for graphic object. | |
More Line Filling options | Fill shapes with orientation/reverse orientation and subset support to split filling |
For better handling filling when selecting fill shapes by orientation or reverse orientation, you can enable subsets. As long as the "Index" column in shp file is not a single value, the subset can separate the filling.
| |
Support square and flat drop line cap | By default cap of dropline shows as circle. Set @lcpd=1 or 2 to make it square or flat. | System variable @lcpd added to control it
| |
Add Option to hide profile anchor text label | Add None to Text Location drop-down list. | When None is selected, the text label will be hidden. | |
Customize single point in Box chart | Press Ctrl key and double click a single point in box chart to customize it individually | To customize a single point in box chart
Please note that we don’t support customizing a single outlier. | |
ORG-21585 | Mask for grouped box chart | Support mask both source data and output data for grouped box chart | For box plot created by Grouped box chart, it mask in graph will mask data in both source sheet and output sheet. |
Draw connection lines behind the box in Box Chart | Support draw connection line behind box or bars | There was no option in the past so connection lines always drew on top of the box. On Connection lines tab, Draw Line Behind option is added. | |
Merge tick label table cells even if there is gap between subgroup | Ignore Gap between subgroup if tick table label is set to merge between subgroups | When Merge Labels is Between Subgroups/Subsets, select Gap between Subgroup/subset, Origin would not break table cell if such cell is suppose to merge. | |
ORG-21603 | Common Plot Properties should consider plot index as well | We support plot properties by index, by name. | We can set it in PD dialog. Or when any checkbox in common display is selected, we show a Common Display button in page level in mini toolbar. Click this button to open a small modeless dialog to show all options in common display group. |
Font Size for Tick Label Table Title | Separate font size control for tick label table title | In Axis dialog, Tick Label: Title tab, Table Title branch, add Font Size option under Color, default value could be Auto. Auto means following font size of 1st table row tick label.
| |
Support Tick Label Line Spacing | For wrapped tick labels, line spacing control is added | In Axis dialog, Tick Label: Title tab, Wrap Text branch, Line Spacing dropdown list is added. Default value is Auto.
| |
Group Plots- Subgroup Properties by Column Label Label Row | Specify plot properties such as shape, color, etc. by column label rows so column with same label will show same shape, color, etc. | On Group tab, specify Increment to be Long name, Units, Parameters, , Book or Sheet name so the shape, color etc. will be based on column label rows. E.g. in the following example Symbol shape is based on column long name, so all CC data uses same shape. Symbol color is based on column comments so SEG1 data are black, SEG 2 data are red, while SEG 4 data are blue.
| |
Add Scaling Factor for Line Width | Add Scaling Factor control if plot’s line width is indexed to another column. | When plot’s line width is indexed to another column, user can set scaling factor. This is useful if the line width value in the column was very small or very big
| |
ORG-22998 ORG-23000 | Surface or Contour plot XY Mapping Improvements | Support more XY mapping for matrix data plot to matrix on other matrix sheet or worksheet columns |
|
Arrows for Droplines | Add Arrow Shape, Arrow Width, Arrow Length option under Drop to for drop line of each direction, in Plot Detail dialog’s drop line tab. |
| |
Show Color Scale in Image Plot | Image plot should be plotted with color scale if it’s not plotted by image matrix. | In the past user need to manually click Color scale to add it.
| |
ORG-22911 | Support Fixing column width in 3D bars | Use Ignore Missing Data for Column/Bar Width to consider a point to gridding or not. | We use Ignore Missing Data for Column/Bar Width option in page Display tab to consider a point to gridding or not. When this option is unchecked, we will consider a point to gridding if X&Y is not missing. By default, 3d graph will select this option. |
Analysis
General
JIRA | SUMMARY | DESCRIPTION | DETAILS |
---|---|---|---|
Duplicate Operation | Duplicate the selected operation and change parameters to easily do comparison | This provides an easier way to compare two analysis. E.g. after doing an analysis, green lock shows. Click the green lock and choose Duplicate this operation. Then click Change Parameter on one of the lock to change some settings. | |
ORG-23262 | Show Pause Auto Update/Recalculations toolbar button | It shows next to Recalculation button on Standard toolbar | For large project, it may be slow to do auto recalculation everytime input is changed. User can use this button to pause the auto update. Click analysis lock to manually recalculate. You will not see the toolbar button if you upgraded from previous version. Choose View: Toolbars… menu. Go to Button Groups tab. Choose AutoUpdate Group. Drag the Pause button to any existing toolbar location. Or on Toolbars tab, choose Reinitialize button. But it will initialize all your toolbar and docked window layout, including Project Explorer, Apps, Object Manager, etc.
|
Uncheck Results Log Output checkbox | Analysis result not output to result log by default | The default used to be checked so integration output to results log as well. But this will increase project file size if user does a lot of integration. So it’s turned off by default in Origin 2021b. | |
Improve X-function pa to open PA in modal style | run pa in a loop with smode:=2 allows adjusting the analysis settings for each dataset. | Ex. string srcbook$=%H;
for(int ii=2; ii<=4; ii++)
{
pa iy:=[srcbook$]1!(1,$(ii)) smode:=2 theme:=baseline;
} |
Fitting
JIRA | SUMMARY | DESCRIPTION | DETAILS |
---|---|---|---|
Incorporate Python into Fitting Function Builder | Support defined fitting function using Python in Fitting Function Builder and Fitting Function Organizer | Fitting Function Builder Fitting Function Organizer | |
Support Python-based fitting functions in Peak Analyzer | Fitting Functions based on Python code can be used in Peak Analyzer. | It will work if the fitting function is Python Vectorial and all the other peak functions, as well as baseline function used, are built-in, i.e. DLL-based; Python Vectorial fitting functions cannot be mixed with LabTalk or Origin C functions when fitting peaks. | |
Support Y Maximum in Peak Properties Output | Output the Y maximum (with baseline) for each found peak | Added a node "Y Maximum" under Result branch - Configure Report -> Peak Properties, Fit Peaks page. | |
ORG-22218 | Easier way to open Fitting Function Library App in NLFit dialog | Fitting Function Library App icon added to Fitting Function Search. | In previous version, you may miss the information of open the Fitting Function Library App to get more fitting functions since we don’t show it unless user typed some keywords and find nothing. In Origin 2021b, this icon always shows in search control. Click it will launch the app.
|
Improve the performance when fitting with Integral function | The performance of fitting with Integral function has been imporved. | Defined a function with integration, fitting with it is much slower when compare with Python. This has been improved in Origin 2021b, the performance should be a little better than Python now. | |
More labtalk work on implicit fitting | Add new X-functions for fitting via Labtalk: nlbeginor, nlbegino. |
nlbeginor example:
|
Batch Processing
JIRA | SUMMARY | DESCRIPTION | DETAILS |
---|---|---|---|
Progress Bars Improvements | improve progress bar to make it more reasonable and easy to use |
| |
Support multiple instances for batch PA processing | Origin support multiple instances when do batch PA since Origin2021b,the speed is significant improved. | Use Background Instance(s) to Process checkbox is added to paMultiY dialog.General speaking,the maximum numbers of instances is decided by numbers of physical cores and logical processors. you can access it by @cores and @logprocs. The speed of improving: |
Gadgets
JIRA | SUMMARY | DESCRIPTION | DETAILS |
---|---|---|---|
Gadget output to clipboard | Option to output gadget result to clipboard so user can paste to other applications, etc. | Checkbox Output to Clipboard is added in Gadget. With it checked, when user does New Output, etc., result will also be put to clipboard. | |
ORG-20829 | Arbitrary shape ROI box in Cluster gadget | Cluster gadgets supports using Draw arbitrary shaped ROI box. Hotkey C to create category. | |
ORG-22370 | Vertical Cursor: Show Legend column as identifier | Add Legend context menu to turn on legend info. in vertical cursor | If all plot’s long name is the same, it’s hard to tell which is which in vertical cursor dialog and output. Legend is added since usually user will set legend to be unique. |
Data Handling
Worksheet
JIRA | SUMMARY | DESCRIPTION | DETAILS |
---|---|---|---|
ORG-22875 S2 | New Book Dialog | Redesign of New Book dialog for workbook and matrix | Menu changes Redesign of New Book dialog
|
ORG-22633 | Enhancements to Worksheet Calculations | Several new functions have been added in this version to further facilitate worksheet calculations: |
idx(B==100) // Returns indices of values in B that equal 100 idx(B>=20 && C<=50) // Returns indices of records with B column bigger than 20 and C column smaller than 50 idx(left(A,5)$ == "Chris") // Returns indices of values in A where first 5 letters are "Chris" idx(diff(B)>1) // Returns indices in B where the difference between one value and the next value is greater than 1 idx(diff(B)>1)[0] // returns the last row index that fits diff(B)>1 condition
|
Extract Units from Long Name | If units are included in long name label row by (), [], and separators, user can use this tool to extract units. | Click Long Name, mini toolbar button is added to extract units from Long name.
| |
Clear Rows Above selection | Mini toolbar is added to clear data above the selected cell, range or row |
| |
More context menu for data filter icon | Paste Filter, Load Filter, Save Filter added |
| |
Extend Day limitation for HH in Time Format | Extend the limitation from 240 to 548 which is 1.5 year now. | Set column format as Time, and display as HH:mm for example, time value “5760:00“ will be displayed as “00:00” in previous builds, now the limitation has been extended, and user can show time data up to “13151:xx“. | |
Autofill with sheet name in cell formula | Support increasing sheet number when auto fill by introduce multiple equal sign with string concatenate. | Example, See following book,
| |
ORG-22606 | More flexible cell formula notation | Cell formula can now use string variable and cell address. | For following notation is now allowed: |
Appending Worksheet Improvements | Use Book long name as dataset identifier and option to Append to End of Each Column |
| |
Worksheet convert to XYZ supports selected region | Add a new option Convert Range, and user can convert selected region only by choosing the Specified Ranges item. Also, improve the trim missing value feature, so the whole XYZ point will be removed once there is missing value in any of them, X or Y or Z. |
| |
Allow XYZ Gridding to Trim Data for Non-Rectangular Data | A new option No Extrapolation outside Boundary (default unchecked) is added to trim data for non-rectangular data. | If data in worksheet is not shaped like a rectangle (e.g. circular), choose this option can allow XYZ gridding to not create data outside of the area defined by the XYZ data in worksheet. The checkbox will not be shown when gridding method is Regular or Sparse. | |
Support copy multiple formula labels in one time | Copy multiple cells in F(x) label row is supported now. | Select multiple F(x) cells and CtrL+C to copy and then and select F(x) cell of a destination worksheet and Ctr+V to paste. | |
Better Print Default for Worksheet | Turn on grid lines in printout by default. Add Print Setup button in Print Preview dialog | In the past, the grid lines between rows and columns didn’t not shown in printout by default. It’s turned on now. User can turn it off on Print/Export tab of Worksheet Properties dialog. Print Setup button is added in Print Preview dialog | |
Export Worksheet Data into PE structure | Support <PE Path> in Export Worksheet | User can specify <Project Folder>, <PE Path> to export data to OPJU file or its subfolder. | |
Add Dynamic Ends context menu in GUI | When specify input range for some tools, a new context menu Dynamic Ends is added to fill range with 0 notation, which means dynamic end and allows keeping the operation when input column is removed or added. | ||
Support Rename sheet in Navigate Worksheet dialog | Double click corresponding name/comment, etc. to rename. | Double click name or comments to rename them in Navigate Worksheet dialog. | |
Freeze beginning columns or rows | Freeze beginning columns or rows so they always show | Only supported with Labtalk wks.frozen$=B; //freeze columns A to B wks.frozen$=3; //freeze rows 1:3 wks.frozen$="B 3"; //freeze columns A:B, rows 1:3 wks.frozen$=""; //unfreeze | |
Improve the Performance of Worksheet Rendering with Many Hidden Columns | Import the performance when worksheet contains many hidden columns. | When worksheet has many hidden columns, trying to render worksheet may cause Origin keeps busy and hard to work. Now this has improved in Origin 2021b, render worksheet, select or de-select worksheet cell should be very fast now. | |
Make Comments edit box resizable in the Name and Comments dialog | New option is introduced and implemented in the Comments edit box of Name and Comments dialog. |
| |
Data Filter Improvements for Date handling | Improve the usage for Data Filter when handling Date data. |
|
Matrix
JIRA | SUMMARY | DESCRIPTION | DETAILS |
---|---|---|---|
ORG-22875 S3 | File: New: Matrix: menu change and New Book dialog | Construct menu or new matrix based on template |
|
Palette support for Matrix Image view | Set palette for all matrix object by style toolbar |
string fname$ = system.path.program$ + "Palettes\green.pal";
| |
Matrix Stack Basic Statistics | Statistics on all matrices in sheet | Analysis: Descriptive Statistics… menu
| |
Subtract Matrices | Subtract matrices in sheet by another matrix | Analysis: Mathematics: Subtract… The sizes of matrices must be the same.
Labtalk script example | |
Pixel Extraction in Matrix with Image View | Pixel extraction from a point or reference column | To extract pixel from a point, use screen reader to pick the point and then open Matrix: Pixel Extration dialog. To extract pixels from several poitns, put coordinates in columns and then in the dialog specify the coordinates from columns.
| |
Linear Fit of Matrix Stack | linear fit each pixel across all matrices in sheet | Analysis: Linear Fit of Matrix Stack…
| |
Simple Math | Perform element-wise arithmetic on two matrices | Analysis: Mathematics: Simple Math… for element-wise arithmetic on two matrices
| |
Matrix Resize | Resize all matrices in sheet | Matrix: Resize… to expand, shrink, interpolate and pad matrix.
| |
Set Matrix Label | Specify matrix labels by a worksheet column | The matrices shows 14, 26, 38, 50 as name. Run mlabelbywcol -d in Script window and specify col(A) in Book1 as reference column for long name. Click OK, corresponding row will be used as long name of matrix | |
Generate XY Grids | Generate XY Grid matrices of a matrix. | Matrix: Generate Grid… to create 2 grid matrices with x and y coordinates from input matrix.
| |
ORG-22915 | Multiple ROIs in Matrix | Support multiple ROIs in matrix | To create more ROIs, user must double click existing ROI to rename it other than ROI.
|
Copy, paste, import and export ROI positions | Copy & paste ROI positions and save and load ROI position for future use |
| |
Create ROIs from XY Data in Worksheet | Create ROI objects from XY data, including XY data from shapefile |
| |
Customize ROI and Position | ROI color, pattern and fill customization and ROI Position dialog for rectangle ROI | Click a ROI and use Style toolbar to customize its style. Double click rectangle ROI. This isn’t supported for ROI of other shapes.
| |
Create new matrix and extract XYZ data from ROI | Create matrix sheet copy of data or extract XYZ data inside ROI | Add a ROI (region of interest in matrix) and right click to Create New or Extract XYZ Data inside ROI. Auto update is supported so that if ROI is modified or moved to a new positon, the created new sheet will update accordingly.
| |
Intensity Profile | Get Intensity profile of active ROI or all ROIs on all matrices in sheet | Right click ROI and choose Intensity Profile…
| |
Tooltip of matrix object | Long Name and Comment on the tooltip of matrix | Mouse over the image thumbnail or D icon when slider mode is on, it should pop up tooltip with Long Name and Comment in it
| |
Missing Value improvements in Matrix | Set missing value color in image view, and specify a value to be treated as missing value in matrix |
| |
Using Slider to go to corresponding matrix | Useful for sheet with many matrices. | Make it easier for user to use the image slider on top of matrix to go to corresponding matrix. | |
Palette support for Matrix Image view | Set palette for all matrix object by style toolbar | Introduce a system variable @MAP. @MAP=0; //Apply palette to all matrix object @MAP=1; //Apply palette to the active matrix object | |
Image Plot Palette uses settings in Image View of Matrix | The image plot should use the same colormap, zscale and missing value color as the matrix image mode | Besides, there’re 2 Labtalk command improvement:
| |
Matrix dimension expands when copying data into it | System variable @MPE is added. Default is 1 to auto expand matrix dimension when pasting data if there is only 1 matrix object. | System variable @MPE 0 – don’t expand matrix dimention 1 – default. if only 1 matrix object in matrix sheet, auto resize matrix dimension when pasting data. 2 – always resize matrix when pasting data. | |
Export Image Stack as Video | Export Image stack in matrix as GIF, TIFF and AVI video. | Choose File: Export: Video…
|
Import
JIRA | SUMMARY | DESCRIPTION | DETAILS |
---|---|---|---|
Unlock Imported Data | Unlock Imported Data context menu is added to unlock imported data. | By default after import data by Data connector, it’s locked so you can’t modify it. Use the context menu to unlock it first. Reimport data will lock it again. Set system variable @IPDC = 0 to always unlock data when using data connector.
| |
Partial Import notation for TDMS data. | Partial Import for TDMS Connector | For TDMS Connector:
[20:70|1-1]-->import row 20 to 70, read 1 and skip 1. can also use syntax: [20 30 40 50], which means import row 20, 30, 40, 50. | |
Improved NetCDF Connector for Climate Data | Detect and automatically convert climate-based data in NetCDF files |
| |
Import Options for NetCDF Data | Options include partial import, data averaging, longitude shift, latitude flip, data conversion, subregions |
During NetCDF import, click the Options button to open a dialog to customize the import After Import click the connector icon in matrix and choose Options to adjust.
| |
NetCDF Connector Time, offset, scale conversion | NetCDF Connector support data conversion after import. |
| |
NetCDf Add and Connect Sheet need to use previous settings | Add and connect sheet(s) in Data Navigator will use last settings for NetCDF Connector. | Netcdf can only import one sheet at a time. But on left panel, user can choose other sheets to import. It will follow same import options as previously imported sheet. | |
Speed improvement of compressed NetCDF file import | Improve the speed of decompressing data and show pregress on status bar | It took a long time to import compressed NetCDF file. The speed is improved and also progress shows on status bar. | |
NetCDF matrix object stack share same Z scale | By defaults, all matrix objects from a NetCDF file share the same Z scale meaning that, when going from one matrix to the next, the colormap will be consistent. |
| |
Issues about averaging irregular NetCDF file | Improved the handling of files with irregular dates, e.g. some dates missing, etc. | For the NetCDF files that have irregular dates, added a system variable | |
NetCDF Export | Export NetCDf data from matrix stack via File: Export: NetCDF… | When exporting NetCDF data, option to set “Base Year for Sampling Across Years” when averaging has been conducting across years (e.g. daily average across years). Necessary to generate proper time dimension data.
| |
decompress netCDF | Add X-Function nccopy to decompress NetCDF file. | X-Function nccopy decompressed a compressed NetCDF file. | |
Navigator Add Variable to Active Sheet or New Sheet | 3D Array should add into new Matrix. Worksheet Data Connector Browser can add 3D node |
| |
Excel Connector to Support Partial Import | Support Partial Import for Excel Connector. | Partial Import node added in Excel Connector.
| |
Web DC Issues | When connect to web, wks.DC.Path$ will set to the temp absolute file path. | Absolute path of Connector Data Source, both for local files and for web data as long as the local cache has not expired or been cleared (see @CFDT and delete -web). | |
Support Matlab date time variable in newer version file | Matlab Connector supports Matlab date time variable in newer version file(mat 7.3). | Matlab Connector supports Matlab date time variable in newer version file(mat 7.3). | |
Data Connector for .RAW file format from Thermo Fisher Scientific | Added MSRawFile Connector to support importing .RAW file format from Thermo Fisher Scientific. | Added MSRawFile Connector to support importing .RAW file format from Thermo Fisher Scientific. | |
Origin File connector to support cell formula | Support interpreting cell formula in Origin File connector. | Note: Some LabTalk function will not be supported yet. | |
Various Ease of Use issues | Auto delete object named as autodel after import. | Auto delete object named as autodel after import. | |
Issue with User Defined, Python-based Import Filters | Improved handling for locating *.PY file associated with import filters. Support multiple sheets for Import Filter Connector. |
| |
MATLAB DC: Improve import speed for large files | Added a system variable | Added a system variable | |
Menu to show Views in table list | Add a new menu item under View menu to show Views in Table list. |
| |
DC Icon Menu to Reset Post Import Actions | Added a new menu item Reset Post Import Actions to Data Connector menu. | After importing data using data connector, user may have deleted columns, etc. If importing again, those deleted columns will not be imported. But if user click Reset Post Import Actions and then import again, those deleted columns will reappear. We had Labtalk script to reset it but user may not know. So added to menu. | |
Shapefile Connector | Added Shapefile Connector to import Shapefile data. | Data: Connect to File: Shapefile menu to import shp file Drag and drop shp file into Origin is also supported. | |
CSV Connector Improvements | Improvements includes sparkline, column plot designation, book long name, file with unicode fullwidth code for characters |
| |
Introduced SQLite database connection | SQLite import and export is now available in Origin. Users can import SQLite files using the Database Connector, and easily export/update worksheets as tables in a SQLite database file. |
| |
ORG-20042 | Origin Connector To Support Books | Origin Connector supports connecting to OGW and OGWU file. |
|
Programming
Code Builder
JIRA | SUMMARY | DESCRIPTION | DETAILS |
---|---|---|---|
ORG-22934 | Option locations to find strings in Code Builder | Find strings in other locations other than current document | Option to find string in All Open Documents, Origin C Source Folder and User Files Folder When you choose Edit: Find in Files or Ctrl+F to find strings
|
WBook Improvements in originpro | Added
| Add Parameters: | |
Add unembed_graph() method to originpro WSheet class | Added unembed_sheet(self, sheet) function to originpro WBook class.
| Added unembed_sheet(self, sheet) function to originpro WBook class. Parameters: | |
originpro, OriginExt and OrglabExt Support Python 3.9.x and Docs Link Update | Update originpro, OriginExt and OrglabExt to support Python 3.9.x. | Update Python version to 3.9.x for internal Python and external Python. | |
originpro improvements 2021b | Add several methods to originpro WSheet class and originpro MSheet class. | Add the following functions to originpro WSheet class Add following functions to originpro MSheet class Use following python code to get more details. | |
Help Mechanism for Origin C GETN | New Origin C macro for when there is no Help for dialog | Added new macro GETN_NO_HELP like
| |
Code Builder CB and Python Console Issues | Improve mechanism to reset Python environment | Improve | |
Data Connector Navigator Framework | Added menu item Copy to Context Menu to copy a row in Data Navigator. | Feature, for example, copied a value of an attribute for an imported NetCDF file. | |
originpro graphing related issues and improvements | Improved add_plot() method to support data range string. Added group() method to group plots. Support Plot class to allow setting colormap and shapelist. | 1.Support adding plot by data range string. 2.Added 3.Support setting color list and shape list for group plots. 4.Support setting color and symbol increment for grout plot. | |
Smart Hint for User Defined function | Define a specification above the function declaration | E.g. the text wrapped by /$$$ $$$/ will be shown in the smart hint panel, when the notation is absent, it will show the prototype only, in above case, it is
| |
Tree node support full precision double value | Introduce a system variable | Origin Tree node double value used to not support full precision. We now introduced a system variable |
Labtalk
JIRA | SUMMARY | DESCRIPTION | DETAILS |
---|---|---|---|
Statistics function improvements
| Add more statistics functions e.g. lcl, ucl, mad, geomean, geosd, harmean and improve ave and confidence function They are under Functions: Statistics menu in Set Column Values dialog
| Improved functions ave() – 3rd argument added for more statistics quantities 1 (default, same as current): mean Confidence() – a 4th argument “dist” is added to provide another algorithm. New functions
| |
ORG-23290 | idx(condition expression) function | Function returns row index of records that meet the condition.
| It’s under Functions: Lookup & Reference menu in Set Column Values dialogExamples: idx(B==100) // Returns indices of values in B that equal 100 idx(B>=20 && B<=50) // Returns indices of values in B are between 20 and 50 idx(left(A,5)$ == "Chris") // Returns indices of values in A where first 5 letters are "Chris" idx(diff(B)>1) // Returns indices in B where the difference between one value and the next value is greater than 1 |
ReportCell() Function tp Access Cells in Report Table | Add a new function ReportCell() to accesses hierarchical report table cell and returns the content of the cell. | Function added under Lookup & Reference to access report table cell. Using this new function will be much easier to access result cell values in Set Column Values and Labtalk Script. Syntax ReportCell(string sBook$, string sSheet$, string sTable$, string sRowRef$, string sColRef$)
Example In report sheet, active Parameters table, select the Value cell of y0, then the status bar will show the link address like “cell://Parameters.y0.Value”. Now you can call the ReportCell function like following to access the cell. Also, you can use it in Set Values formula. | |
Row wise statistics in column formula | Extend Sum() function to calculate for more row wise statistics, include Mean, StdDev, Min, Max, N, Median. | We already support sum(A:D) to calculate rowwise sum from column A to D, but for other statistics, user needs to get it via Statistics on Rows in the past. The following are added in Origin 2021b. sum(A:D)_mean
| |
Improvements in using 0 as last index | Support using 0 to refer to last column and 0! to refer to last sheet in range notation. layer -d 0 to delete last sheet | Using 0 for last Index for column and sheet
| |
ORG-23390 | support index 0 for last column in Sum(B:0) | Use this to easily calculate row-wise sum from specified column to last column |
|
Hotkey Alt+F5 to execute custom routine button | Press Alt+F5 to execute Custom Routine | In the past, user needed to click Custom Routine toolbar button to execute it. Now can click Alt+F5 for it. | |
Support set column formula by LabTalk column property directly | Improve LabTalk column property for formula to be writable. | Following properties are improved, | |
More Constants Built into LabTalk | Mechanism to allow user to define their onw LabTalk constants | User can define LabTalk constant in the const.cnf file and put it under User Files Folder, then when Origin starts, the file will be executed, and the defined constant can be used. | |
More support on Tree in Labtalk | A new method ToString is added for the LT Tree variable. | Example, | |
LabTalk to add Gap from Top for placing buttons for Matrix Book | Add a new property wks.Gap to wks object, then user can use it to add gap from top for Matrix Book and placing buttons. | ||
Labtalk output to file code cleanup | Cleanup code for Type command to type text to a file. | Example, Now all will be dumped to the text file. | |
Labtalk Wks property to find the maximum column number | Add wks.maxCols to scan all columns and find the largest column index that has value, similar to wks.maxRows | ||
Labtalk Color() function supports more special mapping options | Add more prototype to Color() function to set mapping option for layer.plot.color. | Syntax Usage | |
LabTalk Modifier(nIndex) function to get worksheet column modifier | Add a new function Modifier(nIndex) for easily setting index column for plot symbol size, color, etc,. Also, a new properties layer.plot.symbol.interior to set symbol shape. | Usage | |
A new property added to layer.plot to get dataset name of plot | A new property layer.plot.name$ is added. | Example: | |
Labtalk output to support Unicode | Labtalk output to support Unicode |
| |
Improve LT Labtalk ini Set and Get string method | Methods of ini support getting ans setting string values |
Example | |
Speed improvements when creating a workbook with many sheets | Using labtalk to create workbook with many sheets were slow. | or In Origin 2021, using above code to create 365 sheet workbook, it took 16 sec and 14 sec respectively, while in Origin 2021b, it took 10 secs.
| |
Legend support Layer name, Group name substitution notation | Add new options to access Layer name, Group name of plot for substitution notation. | Syntax | |
ORG-22998 | LT access to set the XY map data for contour plot | Add LT access to set/get the XY map data for contour plot and 3D surface plot. | |
LT labtalk string variable dump to skip size lim | Skip the size limitation when print string variable to Script Window. | Suppose a LabTalk string variable str$ contains more than 8191 characters, then run “str$ =;“ in Script Window can dumps whole text now, and “len(str$)=” can also get correct value. |
Python
JIRA | SUMMARY | DESCRIPTION | DETAILS |
---|---|---|---|
Support Intellisense in Python Console | Support Intellisense in Python Console. | Autocomplete hint when typing code in Connectivity: Python Console and Set Column Values dialog. Use system variable @NPYC=0 to turn it off. Default is 1 | |
Python originpro to support setting column formula | New method set_formula introduced. | Examples, | |
Support Missing Values for other data types in Python | Improve PyOrigin and OriginExt to handle custom missing value setting by wks.col.missing. | For originpro packeage,
| |
Support for Python Script in Buttons | Python can be used in button script now. | To use Python, script must begin either with ''', “““, or the | |
| Added | Examples: | |
Support specifying DC to use for | Third argument ( | Example uses the ‘Import Filter’ DC to import the CSV file. User has previously created a custom Import Filter for CSV files. Doing it this way ensures the users import filter is used and not the CSV DC.
| |
Support managing project explorer | Add method such as folder navigate, folder move, etc. | New methods are added: | |
Support Folder object | Added path and pages function to Folder class | Simple example: | |
Support creating plot with error bars | method | ||
Better support for importing into multiple sheets for Python-based Import Filter | New method in originpro package, get_import_sheet(), has been added. | Blog post coming soon explaining how and why to use this new method. But briefly, something like: | |
Python Tree Access |
|
| |
Curve Fit with Python |
| Linear curve fit Nonlinear curve fit | |
ORG-23788 | Release Origin After Python Script Finished |
| op.attach(): connect to running Origin instance. exit(): exit python control from CMD, and then release Origin from Python, without closing Origin. |
OriginC
JIRA | SUMMARY | DESCRIPTION | DETAILS |
---|---|---|---|
Want substitution on preset name for XF output variable | Improve X-Function's option string N to support the substitution for output name in operation tools, see [OutputLongName] section in Origin.ini. | Following notations are supported, See a sample usage in mstackstats XF. | |
X-Function support before install script | Add a new option Before Install Script to X-Function Builder. | When new or modify X-Function in X-Function Builder, a new edit box Before Install Script is provided. The script will be run before install the X-Function. This is usually useful for checking required Python package if the X-Function needs. | |
Tree node support full precision double value | Introduce a system variable |
| |
Origin C function to pad a matrix |
|
| |
Add member functions for GraphLayer | New methods added to GrpahLayer class to set Z Scale. New parameter added to AddPlot function for supporting matrix duplication |
|
Miscellaneous
Setting
JIRA | SUMMARY | DESCRIPTION | DETAILS |
---|---|---|---|
Save Separator and Line Spacing Settings to Project | File: Properties… menu to save separator and Line Spacing settings and then save into project file. | File: Properties… menu to save Separator and Line Spacing settings and then save into project file. Separator and Line Spacing settings locate at Numeric Format tab and Text Fonts tab in preference :Options dialog Labtalk Access: | |
AutoSave Improvement | Origin 2021b will keep a new "Last-AutoSave.opju" | In Origin earlier versions, the autosaved opju was deleted in the following two cases:
Origin 2021b changed to make a copy of the autosaved opju before it is deleted on case 2(closing project). The file has a fixed name "Last-AutoSave.opju".
For any project in the AutoSave, Backup, Unsaved folders, Origin 2021b will
| |
Change default copy page ratio for graphs to 100% | Change default value of copy page ratio for graphs to 100% | Select Preferences: Options, click Page tab, Ratio default value under Copy Page Settings is changed to 100. | |
Provide font control for origin various outputs | add font control in Origin.ini for message log and output window | Origin2021b provide control to set origin outputs font in origin.ini which is located at User Files Folder. current origin only support set font for Message Log and Output window in code builder 1.Origin.ini 2.Labtalk Access(Ready-Only) | |
Hint on locked windows in Learning Edition | Explain why window is locked when mousing over the window in Project Explorer. | Learning Edition has window limitation. If a user open project with more than 12 windows, some windows will be locked. Mousing over the locked window, hint will be given. | |
Allow Mouse Scroll Wheel to Control the Scroll Bar | Mouse Scroll Wheel can scroll the whole scroll bar in vertical. | When put mouse pointer on the Origin workspace, mouse wheel can scroll down and up the whole scroll bar in vertical. | |
ORG-23003 | Support popup for custom toolbar button | Create popup toolbar button in User-defined button group | Step to create popup for custom toolbar button: New a ogs file like custom.ogs with below code, in Customize dialog, select one button and click Settings… button, in Button Settings dialog, set File Name as custom.ogs, set Main as Section Name, set :2 in LabTalk Variable to toogle. |
Make Start Menu more obvious |
| Smart hint will show 5 times unless user started searching with it Improved the icon. System variable @dsb= 0 (default), 1: hide bottom button and menu, 2: hide menu only Restart Origin. | |
Customization on Apps gallery | Hide Add Apps Icon and build-in tabs | New registry system variable @AGO is added for hiding Add Apps Icon(only for user’s tabs) and build-in tabs(All tab and Connectors tab). note:These controlling bits can be combined to produce cumulative effects. for example, @AGO=6 is combination of @AGO=2 and @AGO=4
| |
Menu and toolbar changes related to import and connector | Updated toolbar buttons and menus to encourage user to use Data connectors, etc. |
|
Installation and Licensing
General
JIRA | SUMMARY | DESCRIPTION | DETAILS |
---|---|---|---|
App and Check for Updates require registration | App Center and Check for Updates require the software to be registered | Network Concurrent and Dongle packages will now need to register the product before having access to the App Center and Check for Updates features. The Register dialog is opened automatically if run a un-registered product. | |
Pre-set registry system variables | Preset registry system variables in config.ini under User Files Folder
| New section named SysVar in config.ini file which can look like the following to pre-set registry based system variable AWC |