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 Slicer on Graph

Add data slicer to graph to filter data

Three ways to add data slicer on graph. Slicer is on graph so source worksheet will not be filtered.

  • Data: Slicer… menu

  • Click the old Data Filter button. //button in pressed stage if there is filter on graph. Click it again will remove all filters in graph. Ctrl+Z to undo.

  • Click the Data Slicer button on page level mini toolbar

image-20240730-154029.png

Basic usage

image-20241003-135750.pngimage-20241003-135818.png

More options when right clicking on filter. E.g. right click a text type filter and check Multiple Selection so instead of a dropdown list, user can pick multiple items in column.

image-20241003-140006.png

image-20241003-140757.png

Or right click to disable filter, delete filter or change filter to be another column

image-20241003-140818.png

Right click in blank area to add another filter

image-20241003-140851.png

Compare plots with different conditions

For single layer graph, use Duplicate Plot option to add duplicate plots in same layer with different filter conditions for each plot

image-20241003-135032.pngimage-20241003-135104.png

Or duplicate into multiple layers with different filter conditions for each layer

image-20241003-135240.png

image-20241003-135340.png

Add Filter to control all layers in graph

For multi-layer graph, user can add filter to page level (check Common Filter for All layers/Plots) or to layer level (uncheck it)

image-20241003-134522.png

Set condition will affect all layers

image-20241003-134728.png

ORG-29671

Easy way to change all plot’s X data in a layer or whole page

Change X context menu on Layer and Page level

Right click in blank area within layer and choose Change X to change all plot’s X to be certain column.

Right click outside all layer frames and right click to change all plots in all layers' X to be certain column.

Note: There was only Change X context menu on when right clicking on a plot. User would have to click each plot to change the X data or go to Plot Setup dialog to change so. It’s cumbersome.

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-29208

Support specifying rotation center in Graphic object’s Rotate() function

2nd argument for rotation center is added

GraphObject:: BOOL Rotate(double dAngle, point *ptCenter, BOOL bUndo = FALSE); 

E.g. Add the following Origin C code in Code Builder.

void test_rotate(string type, int x, int y, int degree)
{
GraphLayer ml = Project.ActiveLayer();
point pt(x, y); //specify x, y in pixel
GraphObject gr = ml.GraphObjects(type);
BOOL bUndo = true;
gr.Rotate(degree, &pt, bUndo);
}

In Graph window, add a rectangle object, object name is Rect

In the Scripts Window, execute the follow to rotate the rectangle 45 degrees based on rotation center at (2000px, 3000px),
test_rotate("Rect", 2000, 3000, 45);

ORG-28612

Supports creating a dialog with CEF HTML control using X-Function newHTML

variable cef is added and default checked

newhtml; //create a new CEF HTML dialog, which created an IE HTML dialog in previous version

Notes:

  1. When cef = 1, jquery will be disabled, since using cef requires jquery.

  2. Set @cefdebug=1, then create a CEF HTML dialog, right-click on the dialog and select Inspect toturn on CEF debug mode.

newhtml -d; //open X-Funtion dialog to see more detials

ORG-28088

Provide OC function to retrieve google map image as App

Introduced two OC functions to retrieve google map image.

Code Block
// OImage.h
OC_API LPVOID LoadMapTiles(LPCSTR lpcszUrl, double dMinLongitude, double dMaxLongitude,
        double dMinLatitude, double dMaxLatitude, unsigned int nZoomLevel,
        MapTilesOptions* lpOptions);

OC_API LPVOID LoadGoogleMapTiles(double dMinLongitude, double dMaxLongitude,
        double dMinLatitude, double dMaxLatitude, unsigned int nZoomLevel,
        LPCSTR key, string* pstrCopyright, LPCSTR request_header, LPCSTR request_data,
        bool bConvertToWGS84, LPCSTR session_token);

Python

JIRA

SUMMARY

DESCRIPTION

DETAILS

ORG-29844

More python functions on graph layer like add_label()

Add add_label() and add_line() functions to Graph layer class to support add label and line object.

Code Block
add_label(text, x=None, y=None)
add_line(x1, y1, x2, y2)

Example:

Code Block
import originpro as op
gp = op.new_graph()
gl = gp[0]
#add a text label
text = gl.add_label("hello")
text.set_float('x', 2.5)
text.text = 'world'

#add a line
line = gl.add_line(5, 5, 9, 8)
line.width = 5
line.set_int('arrowendshape', 2)

R

JIRA

SUMMARY

DESCRIPTION

DETAILS

ORG-29322

Improve R installation and detection

Introduced a system variable @RVN to support installing a fixed version of R instead of the latest version when install an app requires R software.

By default, @RVN=441 that means install R 4.4.1 when install an app requires R software.

Can set @RVN=-1 to install the latest one.

ORG-29107

R data frame issues in Origin

provide option not to create index column from R data frame

Added a system variable @rdfi=0(default) to specify whether create index column when send data frame to Worksheet.

By default, not create index column to Worksheet.

When set @rdfi=1, will create index column to Worksheet.

...