Versions Compared

Key

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

Graphing

New Graph Types

...

JIRA

SUMMARY

DESCRIPTION

DETAILS

ORG-29592

Icon improvements on left panel of Plot Details dialog

Much easier to tell a plot is a single plot or belongs to a group

In the past, when open a complicated graph to customize plot, it’s hard to tell if a plot is a single plot, or belongs to a group. For grouped plot, some Tabs only show when 1st member in the group is selected.

In Origin 2025, a single plot is denoted by image-20240823-142637.png, a plot blonging to a group is denoted by alternatingimage-20240823-142656.pngimage-20240823-142923.pngicons

image-20240830-204700.png

ORG-29715

Grouping plots gets easier

Group nonadjacent plots and create multi-groups

Change of behavior and context menus changes in Object Manager to make it easier to group plots in a layer

  1. New behavior of Set as Group Begin and Set as Group End: Right click a member in a group of plot and choose Set as Group Begin or Set as Group End will break the current group into two groups. In the past, plots before Set as Group Begin or after Set as Group End would become isolated single plots.

  2. New Move as a New Group context menu: Select adjacent or non-adjacent plots in a group to move them into a new group. In the past, many steps were needed.

  3. Group non-adjacent single plots: For isolated single plots, no matter same plot type or not, ctrl+ select them, right click and choose Group to make a new group with 1st plot’s plot type.

ORG-27177

Data Filter For Graph

Graph based Data Filter without affecting worksheet Turn on

Click Data Filter toolbar button or Data Slicer mini toolbar to set different filter condition data on each graph without affecting worksheet data

image-20240730-154029.pngImage Removed
  • If there is already filter in worksheet before plotting graph, a prompt will be given

    image-20240730-154112.pngImage Removed
    • Show Data Slicer (old way) - changing filter in graph will affect worksheet and vice versa.

    • Convert worksheet filter to graph based will remove filter condition in worksheet and convert it into a graph based filter. Change filter condition will only apply to current graph

  • only

    image-20240730-154029.pngImage Added
    • Click Filter to change filter condition; right click on a condition for more options including moving the condition orders, deleting the filter, etc.; right click in blank area below existing filters to add more filter conditions.

      image-20240730-182529.png

    • Related LabTalk Access (may be outdated)

      • Command to convert graph with worksheet data filter to use graph based filter and take over the filters on worksheet

        Code Block
        languagecpp
        page -df; //convert to SDF
        //data filter still shows in source worksheet and row is hidden
        
        page -df 1;//convert to SDF and remove filter from source worksheet
        //no data filter in source worksheet and no row is hidden

        Similar to page -df, you can also try below command

        Code Block
        int nUID = layer.plot1.DF();
        nUID=;
      • To see datasets used in the dataplot, try below command

        Code Block
        list pl;
      • To show Graph Data Slicer pane, run below script

        Code Block
        page.cp.type = 5;
      • New LabTalk Object SDF is implemented to access the graph based filter used for the plot, says Shared Data Filters object.

        Code Block
        languagecpp
        //Suppose active graph plotting with graph based filter
        int nUID = layer.plot1.SDF;
        SDF ff = nUID;
        ff.wks$ =;//read-only, worksheet range, "[book2]sheet1"
        ff.enable =;//to allow temp disable
        ff.nf =;//read-only,number of columns to have filter
        ff.f1.col =;//first filter on which col
        ff.f1.filter$ =;//query string
        ff.f1.filterx$ =;//the x variable used inside the filter
        ff.Set(D:3:"between(18,23)");//replace col(D) filter if already existed
      • To retrieves the state of data filters in the active graph, use command

        Code Block
        languagecpp
        page -dfs nn;
        //nn = 0: no data filters detected
        //nn = 1: data filter present in at least one worksheet providing the data for at least one dataplot in the graph
        //nn = 2: shared data filter used by at least one dataplot in the graph
        //nn = -1: error

        or method

        Code Block
        nn = page.GetDF(str$);
        //str$ is a string variable to receive the worksheet range
      • When no data filter is used by any of dataplots, either as worksheet data filter or as a ShDF (execute the above command page -dfs nn; it must return 0), run below command to add a graph based filter.

        Code Block
        page -dfn ColNameOrNumber;
      • Create Shared Data Filters (ShDF)) from Worksheet

        • Define/Modify a Shared Data Filter from active worksheet

          Code Block
          languagecpp
          worksheet -shdf uidShDF [[colname:filtertype:filtercondition]]
          //uidShDF is the name of the LabTalk variable which will receive the UID of the created ShDF
        • Create virtual datasets using existing ShDF

          Code Block
          create name -vsshdf worksheetrange uidShDF;
        • Example

          Code Block
          fname$ = System.path.program$ + "Samples\Statistics\automobile.dat";
          newbook;
          impASC;
          worksheet -shdf uidShDF [[D:3:"between(16,23)"]];
          create myshdfvsy -vsshdf col(F) uidShDF;
          plotxy iy:=(C,myshdfvsy) plot:=202;
      • Command to dump Shared Data Filters in worksheet

        Code Block
        worksheet -shdfd;

    ORG-28659

    Error bar tooltip

    The error bar tooltip provides numerical details of the range of uncertainty around data points in a graph.

    The x and y error info shows when mousing over data points plotted with error bars, or when mousing over error bars.

    image-20240531-201244.png

    ORG-28723

    Swap layers or swap graph objects

    Select position of two layers, or two graphic objects

    Swap position dropdown list is added on mini toolbar if two layers, or two graphic objects are selected.

    It also shows on Object Edit toolbar on right side of workspace.

    E.g. shift+select two layers and click the button.

    image-20240716-082625.png

    ORG-28721

    Show Layer info in the Graphs list box

    List Layer numbers in parenthesis after corresponding Graph name

    This helps user to associate graphs and its layers in preview window when merging graphs

    image-20240604-143759.png

    ORG-29082

    Add Note for Layout Window

    Adding notes for layout window from Object Manager

    Notes could only be added to graph window in Origin 2024b. In Origin 2025, notes can be added to layout window as well.

    With Layout window active, click the Add Notes button on top of the Object Manager.

    image-20240603-191939.png

    If there is notes for a layout window, there will be + inside the icon. Click it to read the notes.

    ORG-28263

    3 List orders in Batch Plotting Dialog

    More ways to sort available books and sheets in Batch Plotting dialog

    There was no sorting order option in Batch Plotting dialog.

    Before Origin 2024b, books show in creation order and sheets show in appearance order. In Origin 2024b, both books and sheets show in alphabetic order.

    In Origin 2025, 3 sorting modes are added. Click the column header to toggle them.

    • Unsorted (default, old behavior before Origin 2024b)

    • Sort ascending (default in Origin 2024b)

    • Sort descending (similar sorting criteria as above type 2, but descending).

    Note: Sheets in same book as source graph always show on top.

    image-20240619-162850.pngimage-20240619-162938.pngimage-20240619-163002.png

    ORG-28297

    Plot Menu for Image Window

    Support plot menu for floating image window.

    Float the image window to the other monitor then check the Plot menu

    ORG-29079

    Remove the limitation of 16 color toolbar icon for custom toolbar

    Supoort 32bit color toolbar icon in custom toolbar

    Before Origin2025, only 16 color toolbar icons are supported. If you choose a 24bit or 32bit color image for custom toolbar and restart Origin, you will get Button group bitmaps must be 16 color message.

    ORG-29031

    Histogram Auto Binning improvement for arithmetic sequences

    Histogram Auto Binning improvement for arithmetic sequences

    When count(unique(input))<=10, we can sort the unique(input) and check if they are arithmetic sequences. In an arithmetic sequence, the difference between consecutive terms is always the same. If they are arithmetic sequences, assume the difference between consecutive terms is delta, bin size=delta, bin begin should be min-delta/2, bin end is max+delta/2.

    Implemented in Origin2025.

    ORG-16510

    Smartly adjust ticks when zoom in the graph

    Improve the rule of showing ticks to show better ticks values when zooming in

    In Origin2025 before, improve the below case that sometimes too few ticks sometimes too many ticks

    1. Zoom in graph with hotkey/red dot

    2. Apply scale of ROI in image to graph

    ORG-29207

    Save To Cloud support for project files

    Support saving project to cloud

    Can save project to cloud by menu: File: Save Project to Cloud…

    If there is existing opju file with same name on cloud, for OneDrive/SharePoint, will show dialog to ask replace or not; for Google Drive, save it directly.

    ORG-29595

    Enable Template Library Toolbar Button for Image Window

    When image window is active, the menu “Plot → Extended Templates“ and Template Library button is available.

    Import an image to image window then choose the menu “Plot → Extended Templates“ or Template Library button.

    ...

    JIRA

    SUMMARY

    DESCRIPTION

    DETAILS

    ORG-29644

    Paste Link from Excel Files on Cloud

    Copy from xlsx files on cloud and paste link to worksheet cells

    Open excel files from cloud in MS Excel. Copy data and paste link to worksheet in Origin.

    ORG-28316

    Set Date/Time Sampling Interval

    Define a sequence for time or date by a start value and an increment value

    Select data column and click the Sampling Interval mini toolbar button or choose Column: Set Sampling Interval… menu to define Date/Time based sampling interval. (Only Numeric was supported before Origin 2025)

    image-20240522-212746.png

    For column with sampling interval, image-20240522-213025.png icon shows at the corner.

    • Double click to read sampling interval info.

    • Select the column and choose Column: Show X Column to display the Sampling interval column to the left of the data

    image-20240522-213148.png

    Note: When plotting a column with sampling interval, it will use the inclusive sampling interval for the column instead of any X column to its left.

    ORG-29184

    Improved hotkeys for data editing

    Same hotkey combinations as Excel to highlight contents of a cell and select entire rows or columns

    Highlighting Content Inside a Cell:

    • Ctrl + Shift + End, or Ctrl + Shift + Down to highlight from cursor location to end of the cell

    • Ctrl + Shift + Home, Ctrl + Shift + Up to highlight from cursor location to beginning of the cell

    Highlighting Whole Column/Row:

    • Ctrl + Space to select whole column

    • Shift + Space to select the whole row

    ORG-29058

    Show/Hide All User Parameters Mini Toolbar

    Show or hide all user parameters rows to leave more space for data area in worksheet

    Single click on any user defined parameter row header and click the new Hide/Show All User Parameters button to hide all user-defined parameter rows. Click again to show all.

    This provide a quick way to hide all user-defined parameter rows on top of data so you can see more rows in data area.

    image-20240531-203133.pngimage-20240531-203239.png

    ORG-29123

    D0 for Last User Parameter.

    D0 now refers to the last user parameter.

    D0 is changed to refer to last created user parameter row instead of 1st user parameter row. E.g.

    • Col(B)[D0] and col(B)[D0]$ can be used to refer to column B’s last user parameter row value or text respectively.

    • wks.merge(D0, 1) - merge last user parameter row if neighbouring texts are the same

    • Substitution notations %(Sheet1!,1,D0), %(1@W,2,D0)

    ORG-28891

    Maximum column width for long name when importing data

    System variable @MCWL=15 (default) to set long name max column width when importing data

    @MCW and @MRH to control the max column width and max row height when importing data.

    New system variables are added

    • @MCWL - controls the long name max column width

    • @IXFC is – controls if Import XF follows the connector or not. 1 (Default): follow the connector. 0: does not follow the connector.

    ORG-29494

    Make XF text2cols accessible on menu

    Choose Column: Text to Columns main menu to open text2cols XF.

    Add text2cols XF in main menu to split a single column of text into multiple columns.

    ORG-29540

    Reduce Columns Supports By Column Labels

    Merge Columns by Column Labels

    Add an option Merge by Column Labels for the Reduce Methods in the Reduce Columns tool. The columns with the same column header labels can be merged with the row statistics.

    ORG-29636

    Mouse wheel to scroll sheet

    Support mouse wheel to scroll sheet tab for book window

    When mouse over sheet tab, support mouse wheel to scroll the sheet tabs. So it is easier to navigate sheet when there are many sheets. Both workbook and matrix book are supported.

    ORG-29332

    Easier way to build Summary Sheet

    Added new context menu on sheet tab named “Add Summary Sheet for Batch Analysis” right below “Add Notes as Sheet” to build Summary sheet.

    Add_Summary_Sheet1.gif

    ORG-29742

    Enter value in F(X) applies to whole column

    For columns with sub range set with values, enter F(x) will ignore subrange setting and apply to whole column

    Sometimes user highlights a range of cells in column and set its value. Such sub The formula shows in F(x) cell but will only be applied to the specified sub range in the future. Later user may forget this and wonder why changing F(x) failed to apply to the whole column.

    In Origin 2025, system variable @FXR (default 1) is added:

    • 1 - new behavior. Type new formula in F(X) will update the whole column

    • 0 - old behavior. Type new formula in F(X) will only update the subrange

    APPS-1582

    New LiDAR Data Connector

    New Data Connector allows LAS or compressed LAZ files to work with LiDAR data.

    The LiDAR Data Connector accepts .las and .laz files. These files are structured to contain 3-D x,y,z-tuplet point cloud data.

    Import

    JIRA

    SUMMARY

    DESCRIPTION

    DETAILS

    ORG-28665

    Import all sheets with Excel Connector

    <All> option added in Excel Sheet dropdown list in Excel Connector

    In Origin 2025, user can choose <All> import all sheets at once.

    Drag an drop Excel file uses <last used> settings. So if you pick <All> to import all sheets and later drag other Excel files, all sheets will be imported as well.

    Note: If you pick a specific sheet to import and later drag and drop another Excel file without such sheet name, 1st sheet will be imported.

    ORG-29128

    Connect Multiple Files into Same Sheet

    Append files row wise or column wise in same sheet

    In Connect Multiple Files dialog, options to import multiple files into same sheet are added.

    • Append to Same Sheet as New Rows or New Columns.

    • Insert the full file name or extract meaningful information from a specific part of the file name.

    image-20240620-161321.png

    ORG-29211

    CSV Connector Recognize Date Format for England Date Time

    Added system variable @IDT and improve CSV Connector to auto detect “dd/MM/yyyy HH:mm” date format.

    1.Added system variable @IDT=0(default), when set @IDT=1, will import date and time data as text.

    2.When import “dd/MM/yyyy HH:mm” date format data, will auto detected it as date and imported it into column as date format.

    ORG-29160

    Better handle for date conversion without time part for 00:00

    Improve CSV Connector to support auto detect the iso date data without time part and append “ 00:00:00”.

    For below iso date data, will append “ 00:00:00” to “1998-01-01” and import as “yyyy-MM-dd HH:mm:ss”.

    Code Block
    1998-01-01
    1998-01-01 01:00:00
    1998-01-01 02:00:00
    1998-01-01 03:00:00
    ...

    ORG-28512

    Data Connector Undo and Redo

    Supported undo and redo for Data Connector.

    Data Connectors support undo and redo for following actions.

    1. Remove data connector

    2. Remove data connector from all books

    3. All Navigation Panel Context Menu

      1. Connect as New Sheet(s)

      2. Connect by Duplicating Active Sheet

      3. Delete Connected Sheet(s)

      4. Add to Active Sheet

      5. Remove From Active Sheet

    ORG-28648

    CSV connector save Post Import Script as Default

    Improved CSV Connector to support save Post Import Script as default settings.

    Save post import script as default.jpg

    ORG-28981

    Better way to indicate project files opened from cloud

    When open project from cloud, should show the cloud path on title bar.

    Cloud path on title bar.jpg

    ORG-29162

    Google Sheet Connector App

    Introduced GoogleSheets Connector to support import Google sheet(s) from Google drive or Google sheet(s) URL

    1. Select Data: Connect to File: Google Sheets to import google sheet from google drive.

    2. Select Data: Connect to Web… to import google sheet from google sheet URL.

    ORG-27049

    CSV Connector supports append columns from script

    Added a bit 128 for LT wks.dc.flags to support append columns to import.

    Example:

    Code Block
    string next, fname, path$=system.path.program$ + "Samples\Batch Processing\"; 
    findfiles fname:=fname$ ext:="*.csv";
    wbook.dc.add("CSV");
    wks.dc.flags=128;	// turn on append cols mode
    loop(ii,1,2)
    {
    	next$ = fname.GetToken(ii, CRLF)$;
    	wks.dc.source$=next$;
    	wks.dc.import();
    }

    ORG-29757

    CSV connector default to not open CSV Import Options dialog

    Use CSV Connector to import ASCII file will not show CSV Import Options dialog by default.

    When start CSV Connector by following ways, Show Options checkbox will be not checked by default.

    1. Choose menu Data: Connect to File: Text/CSV

    2. Clicking Import Single ASCII (Ctrl+K) toolbar button

    3. Click app icon.

    ...