MagicPlot User Guide

Compiled from online help on <date>
(c) MagicPlot.com

Introduction

System Requirements and First Launch

MagicPlot is a cross-platform application based on Java technology. Java Runtime is included in the MagicPlot distributive for Windows and Mac OS X.

Running MagicPlot on Linux/Unix

You need Java Runtime Environment (JRE) of version 11 or later to run MagicPlot 3.0. You can install Java using the package manager or get a free compiled copy here: https://adoptopenjdk.net/.

Run MagicPlot using command: path-to-jre/bin/java -XX:MaxRAMPercentage=75 -jar MagicPlot.jar.
Here -XX:MaxRAMPercentage=75 means maximum heap memory usage 75% of free memory.

First Launch

MagicPlot does not need any installation procedure.

Place MagicPlot executable folder to the directory you prefer.

MagicPlot preferences and registration data are stored in your operating system profile and are individual for each account.

Opening Projects on Double Click

Windows

To make Windows open your MagicPlot project files (.mppz) in MagicPlot just open context menu of one project file in Explorer and select Open With -> Choose Program item. In the opened window press Browse button and choose MagicPlotPro.exe or MagicPlotStudent.exe file. Select the Always use the selected program to open this kind of file checkbox and click OK.

Mac OS X

MagicPlot project files (.mppz) will be automatically associated with MagicPlot by your operating system.

Getting Started: Tables, Figures, Fit Plots and Undo

MagicPlot Projects contain Tables, Figures and Fit Plots. MagicPlot Project files have .mppz extension.

Tables contain numeric or text data.

Fit Plots are intended for non-linear curve fitting and subtracting baselines.

Figures are intended to graphically represent multiple data.

Project tree

Close Unused Internal Windows

Feel free to close currently unused interval windows with Tables, Figures and Fit Plots. The data will not be deleted, the window will be closed only. You can open the closed window by double clicking on component in Project tree.

Where to start?

In most cases you may start with table from text file by clicking Project -> Import Text Table menu item.

Creating Figures and Fit Plots

The easiest way to create Figure or Fit Plot is the following:

Select two columns (x and y) in Table containing your data

Select Create Figure or Create Fit Plot item in the Table context menu

You may also use Create Figure or Create Fit Plot buttons in the toolbar.

Enter Expressions in any Numeric Field

MagicPlot can evaluate simple expressions entered in any numeric text field (brackets are supported, see for details.) For example, you can enter 12/pi in circle width and height fields in if you want its perimeter to be equal to 12 (remember that p=πd, where p is perimeter and d is diameter):

All numeric fields support expressions

Importing Table from Text File (ASCII)

Use Project → Import Text Table menu item to import table(s) from text file(s), also referred to as ASCII file(s).

You may select multiple files in opened standard file dialog by holding Ctrl or Shift.

If you open multiple files, you can select the file to preview in files drop-down list (in Text Input Preview frame)

If you select incorrect file(s) by mistake, click on Open icon to open file dialog once again and select other file(s).

You can set Create Figure or Create Fit Plot checkbox to create Figure of Fit Plot after importing:

If you select Figure, the created Figure will contain all imported data from all files

If you select Fit Plot, one Fit Plot will be created for each imported file

You can enlarge a part of the preview plot by selecting an area by mouse (scale box zoom tool). Use context menu of the plot to change scale zoom to default.

F5 key reloads the text file or reloads the data from clipboard.

Import wizard dialog

Command Line Arguments and 'Silent' Import

MagicPlot opens files which come as the command line arguments on launch. MagicPlot Project files (.mppz) are detected as projects, the all other files are treated as the text files and the Import dialog is opened. The text files will be imported in the current opened project.

The -silent key in command line forces MagicPlot to import text files without opening import dialog. The previously used import setting are used in such case. If Fit Plot or Figure creation was selected in Import dialog last time, the new plots will be created.
Example for Windows OS: MagicPlotPro.exe mydata.txt -silent

Please make sure that your firewall software does not block MagicPlot loopback (127.0.0.1) request.

Table Editing

In MagicPlot Tables are used to store numeric or text data depending on column type (numeric/text).

Data Types

MagicPlot supports these data types in Tables:

Format	Description
Numeric	64-bit double precision floating-point numbers (IEEE 754)
Text	Unicode string with unlimited length

Data type is set for entire columns. One column may not contain data with different types.

Empty cells are equivalent to values.

Values from text columns are treated as empty cells if used as numbers.

Changing Column Type

Use Set Column Type menu in column context menu to change column type (numeric/text).

Columns Numbers

Columns are enumerated starting with 1. The first 26 columns are additionally denoted with Latin letters: A, B, C, ... Y, Z, 27, 28, 29, .... You can use either numbers or letters, addressing cells and columns in formulas.

Renaming Columns

Double click on column header to rename table column. You can also use Rename Column context menu item or press F4.

Moving (Reordering) Columns

Hold Alt key (Option on Mac, Meta/Win on Unix-like) and drag column header to rearrange table columns. If Alt key is not pressed, mouse dragging on header will select the columns.

Editing Table

You can edit table cell by double clicking on it. You can enter either a number or an expression using .

Fit Column Widths

To fit the width of one column, double click on right separator line in table header. To fit several columns widths, select multiple columns and double click on one of column separators in table header.

See Also

Missing Values (NaN) in Tables and Calculations

In computing, NaN, which stands for Not a Number, is a value or symbol that is usually produced as a result of an operation on invalid input operands. For example, most floating-point units are unable to explicitly calculate the square root of negative numbers, and will instead indicate that the operation was invalid and return a NaN result.

An invalid operation is not the same as an arithmetic overflow (which returns a positive or negative infinity). Arithmetic operations involving NaN always produce NaN, allowing the value to propagate through a calculation so that errors can be detected at the end without extensive testing during intermediate stages. A NaN does not compare equal to any number or NaN.

How does a NaN appear?

There are three kinds of operations which return NaN:

Operations with a NaN as at least one operand, e.g. 1+NaN

Indeterminate forms

Divisions 0/0, ∞/∞, ∞/-∞, -∞/∞, -∞/-∞

Multiplications 0*∞, 0*(-∞)

Power 1^∞

Additions ∞+(-∞), (-∞)+∞ and equivalent subtractions.

Real operations with complex results

Square root of a negative number

Logarithm of a negative number

Tangent of an odd multiple of 90 degrees (or π/2 radians)

Inverse sine or cosine of a number which is less than -1 or greater than +1.

Examples

Expression	Result
0^0	1
0/0	NaN
sqrt(-1)	NaN
1/0	Infinity
-1/0	-Infinity

NaN in MagicPlot Tables

In MagicPlot NaN is also used to represent empty cells in .

Statistical functions ignore NaN values in Tables.

NaN in Expressions

You can use predefined constants NaN, nan or NAN in expressions to specify NaN value.

The isNaN(x) function checks if the argument is NaN.

Example

If you set a if(col(B) >= 0, col(B), NaN), it will return only positive values from column B. Negative values are replaced with NaN value. You can use this expression to filter negative values if you do not want to use them in future calculations. Note that ”Not-a-Number returned at row #” warning can be shown for such expressions.

Nonlinear Curve Fitting with Fit Plot

Nonlinear Curve Fitting: Fit Plot

Creating a Fit Plot

Nonlinear least squares data fitting (nonlinear regression) can be performed using Fit Plot. To create a Fit Plot, select your X and Y columns in Table, then select Table -> Create Fit Plot in the main menu, or use the same item in the Table context menu, or use Create Fit Plot button in the toolbar.

Creating Fit Plot using Table context menu

MagicPlot has been verified with NIST Datasets

National Institute of Standards and Technology (NIST) has created the Statistical Reference Datasets Project which includes 26 datasets for testing the nonlinear fit algorithms. MagicPlot has been successfully tested on these datasets. Our report on MagicPlot testing with NIST datasets is available here: Report.

Fitting Methodology

'Nonlinear' means here that analytical fitting function depends nonlinearly on varying parameters (fit parameters). Fit procedure iteratively varies the parameters of the fit function to minimize the residual sum of squares. The nonlinear fitting algorithm needs the user to set the initial values of fit parameters.

To fit the data, implement these steps:

Create a Fit Plot, specify Y errors in Data tab of Curve Properties dialog for the data curve, if any

Specify fit function by adding Fit Curves

Specify initial values of fit parameters (drag curves or enter accurate values)

Specify used X data interval

Run fitting

You can undo fit and also undo changing initial parameters as any other action using Undo function. It is a handy feature when experimenting with different models and initial parameters.

Further reading

This manual does not completely cover the complex nonlinear fitting methodology. We recommend you to take a look at this book:

H. Motulsky and A. Christopoulos, Fitting Models to Biological Data Using Linear and Nonlinear Regression: A Practical Guide to Curve Fitting, 2004.

Fit example

Fit Function is a Sum of Fit Curves

MagicPlot considers fit function as a sum of Fit Curves. Ordinarily in peaks fitting each Fit Curve corresponds to one peak in experimental data. Click the Add button to add new Fit Curve to the list. There is a number of predefined Fit Curves types (Line, Parabola, Gauss, Lorentz, etc.) You can also create a Fit Curve and manually enter the formula. Baseline fitting components may be added to the fitting sum, too.

Fit Plot window contains the list of Fit Curves. Each Fit Curve in the list has three checkboxes:

Fit Curves table

Show: Specifies whether to show this Fit Curve on the plot. Active only if Baseline checkbox is not set

Baseline: Toggles the subtracting of this Fit Curve from experimental data. You also can use Residual button to subtract all Fit Sum from data

Sum: Specifies whether to use this Fit Curve in sum fit function

Below the Fit Curves list, is a parameters table which shows names, values, and descriptions of parameters relating to the selected Fit Curve.

Fitting by Sum and Fitting One Curve

MagicPlot allows two alternatives buttons to run the fit:

Fit by Sum button will fit the data with the sum of Fit Curves for which the Sum checkbox is set. Data interval from Fit Interval tab will be used. This button must be used for example to fit the spectrum with the sum of peaks.

Fit One Curve button will fit the data with the one currently selected Fit Curve. The individual interval for each Fit Curve will be used. Set Edit Interval checkbox to edit individual interval for each Fit Curve.

Copying and Pasting Fit Curves

You can copy and paste Fit Curves from one Fit Plot to another Fit Plot or Figure. You can also paste the copied Fit Curves to the same Fit Plot to create a copy.

The copy of Fit Curves with the same parameters and styles will be created if you paste Fit Curves to a Fit Plot.

A link to the source Fit Curves will be inserted if you paste Fit Curves in a Figure.

Fit Curves Reordering

You can reorder Fit Curves by dragging them in the table. The data curve is always drawn the first and fit sum is drawn the last.

Setting Initial Values of Parameters

Nonlinear fitting assumes that certain initial values of parameters are set before fitting. This procedure is very easy if you use Fit Curves of predefined types (not custom equation): you can drag curves on the plot. Initial parameters values for each Fit Curve can also be set in the parameter table.

Moving curves with mouse

Adjusting Parameters with Mouse Wheel

You can adjust Parameters in the table using mouse wheel scrolling when the mouse cursor is on the desired parameter: Hold Ctrl key (Cmd key on Mac) and scroll. If the Shift key is also pressed the parameter step for one wheel 'click' will be increased.

Guessing Peaks

If you are fitting a spectrum with multiple peaks, MagicPlot may automatically add and approximately locate peaks before fitting. See for details. Guessed peaks should be used only as of the initial estimate for fitting: don't forget to click the Fit button after peaks are added.

Parameter Locking

You can lock (fix) parameter(s) to prevent varying this parameter(s) during the fit and to prevent its changing due to set initial values by mouse dragging (for built-in functions). Set the checkbox in Lock column in the parameter list to lock parameter.

Table of Parameters

Parameters Joining

MagicPlot allows joining (sometimes referred to as coupling, binding, linking) of fit parameters of different Fit Curves. See for details.

Weighting of Data Points Using Y Errors

MagicPlot allows the weighting of data points with Y error data. You can specify Y error data in Fit Plot properties dialog. If no Y error data are specified weighting is not used.

Weights are calculated as 1 / Yerror2 for every point. See for details.

Weights must be positive and finite for all points so the Y error values must be positive and non-zero (to prevent infinite weights). MagicPlot checks this condition before fitting and shows an error message if Y errors cannot be used to compute weights.

Specifying Fit Intervals

You can set the X intervals of the data which will be used for fitting. Data points outside these intervals are not used to compute the minimizing residual sum of squares. You can use this feature if some data points (especially in the beginning or the end) are inaccurate, e.g. noisy.

Select Fit Interval tab to set intervals visually or edit accurate borders values in the table.

Double click on the interval to split it

Drag the interval border to move it. If intervals intersect, they will be merged

Use context menu on the plot to create, delete and split intervals

Note: Data intervals from the Fit Interval tab are used for fitting Sum only. To set individual data intervals for the one Curve fitting use Edit Interval checkbox.

Fit interval context menu

Baseline Fitting and Extraction

Fit Interval is also usable when baseline fitting. Before baseline fitting, you can specify the interval which does not contain any signal points and contains baseline only. Set Baseline checkboxes at baseline Fit Curves after baseline fitting to subtract baseline from data. Then specify the whole interval and fit the data.

Note that if you use data processing (integration, FFT, etc.) on Fit Plot, then the difference between the data and baseline curves (which you do see on the plot) will be processed. You can use this behavior to exclude baseline from data before integrating, see for more information.

'Data-Baseline' Table Column

The 'Data-Baseline' column is appended to the Table with initial (X and Y) data when you create a Fit Plot. The 'Data-Baseline' column contains the difference between initial Y data and baseline approximation (the sum of Fit Curves for which Baseline checkbox is set). It is 'Data-Baseline' column that is actually plotted on Fit Plot as data.

Use 'Data-Baseline' column in Table if you want to process the data without baseline. This column is also used as initial data if you use Processing menu when Fit Plot is active.

Viewing the Residual Plot

Residual means here the difference between initial data, baseline function and Fit Sum function. MagicPlot offers two different ways to view the residual:

Press and hold the Residual button. The residual will be shown while the button is pressed. You can use either mouse or space key (if the button is selected) to hold Residual button.

You can either set Baseline checkboxes for all summed Fit Curves to subtract them from data and explore the residual plot

Fitting

To execute the fit click the Fit by Sum button of Fit One Curve button (see below).

MagicPlot indicates the fit process with a special window. Fitting curves are periodically updated on the plot while fitting so you can see how fit converges.

Fit progress window

MagicPlot shows the current iteration number and deviation decrement with two progress bars while the fit is performed. The fit process stops when one of these progress bars reaches the end.

You can see two buttons on fit progress window:

Break Iterations: Breaks iterations after current iteration. Use this button if you suspect that further iterations will not change the result.

Undo Fit: Breaks iterations and reverts fit parameters to their initial (before fit) values. Use this button if you see that fit process converges to wrong result; change initial values of parameters and run fit again.

Fitting One Curve

You can use MagicPlot to fit the data with single selected Fit Curve by pressing Fit One Curve button. In this case, a specific data interval for each Fit Curve is used and the main fitting data interval (from Fit Interval tab) is ignored. Select Edit Interval checkbox in the bottom of the Fit Plot panel to set specific fit intervals for each Fit Curve.

Because of using individual data interval this method is useful for baseline fitting. In order to fit baseline specify the intervals which do not contain signal (peaks) and contain only noise.

'Fit One Curve' button

Why My Fit is Not Converged?

In some cases, the fit procedure may fail to find the optimal parameters values. The actual mathematical reason for this error is the impossibility to invert the matrix α calculated from partial derivatives of the fit function with respect to fit parameters. This inverted matrix is used to compute the new values of parameters for the next step of fit (like gradient descent). In most cases, this error occurs when the matrix α is ill-conditioned or nearly singular and the inverse cannot be calculated accurately enough with used floating-point arithmetic.

The origin of this error may be:

Fit is not converged through one or more parameters: some parameters were taking unrealistically great values during iterations. There is no local minimum of residual sum of squares near the initial values of these parameters. MagicPlot highlights the suspicious Fit Curve in this case.

Mutual dependency exists between some parameters. The algorithm cannot resolve which parameter to vary.

Fit function is ill-conditioned: the minimized residual sum of squares depends on some parameters much more than on other ones.

Numeric overflow (or underflow) when calculating fit function with initial parameter values or on the next steps.

Try one of the following:

Specify more accurate initial values of parameters.

Simplify the fit function (e.g. remove some peaks).

Lock some parameters.

See Also

Specifying Custom Fit Equation

To specify custom fit function formula, press Add button and select Custom Equation in popup menu.

Enter your formula in y(x)= text field below. Use x as fit function argument. See for details.

You may recall last entered custom fit functions using Recently Used Custom item in Add popup menu.

Custom fit function example

Fit Parameters

You can introduce Fit Curve parameters with any names except argument x, and constants like e, pi (see predefined constants for details):

Parameters names are case-sensitive (a and A are different parameters).

Parameters names lengths are not limited.

Begin names with letter or _ sign. You can use numbers in the middle or in the end of the name: a1, a_1, A1, a1t, but the names like 1a are not allowed.

The parameters you introduce in formula will automatically and immediately occur in parameters list, you do not need to enter parameters names in the list manually. Random values are used as the initial values of parameters. Do not forget to set more relevant initial values, otherwise fit algorithm may fail.

Adjusting Parameters with Mouse Wheel

You can adjust Parameters in table using mouse wheel scrolling when mouse cursor is on the desired parameter: Hold Ctrl key (Cmd key on Mac) and scroll. If Shift key is also pressed the parameter step for one wheel 'click' will be increased.

See Also

Using Spline for Baseline Subtraction

You can use cubic spline to subtract baseline on Fit Plot. To create spline curve click on Add button in Fit Curves tab of Fit Plot and select Spline menu item.

Do not use splines to subtract baselines which can be fit well enough with Line curve (line or constant baseline). You may mistakenly subtract wide peaks using spline. In some cases Parabola curve may be more suitable.

Editing Spline

Created spline has three anchor points by default. You can move, add and remove anchor points:

Move anchor point with mouse

Double click on spline curve to add new anchor point

Double click on anchor point to remove it

Set Baseline checkbox in spline row in fit curves table to subtract spline from data.

Using spline for baseline fitting

Fitting with Spline

Spline anchor point (x, y) coordinates are treated as fit parameters so you can perform fitting with spline although we don't recommend this technique. Fitting the baseline with some adequate model function is preferred.

It is recommended to set appropriate fit intervals which contain only baseline without peaks. In such case Fit One Curve button is more acceptable than Fit by Sum button, because the individual interval for current curve will be used and the interval from Fit Interval tab (which is used to fit by sum of curves) is ignored. Select spline curve and set Edit Interval checkbox in the bottom of the panel to edit spline interval, then click on Fit One Curve button. The anchor point coordinates will be varied but the number of points will remain. You also can lock some parameters (usually x coordinates) by setting Lock checkboxes in parameters table.

Setting Fit Interval for spline curve Spline subtraction result

See Also

Guessing Peaks

MagicPlot can approximately locate peaks in spectrum. To locate peaks click on Guess button in Fit Curves tab of Fit Plot. Peaks are added at position of global extremum of data-baseline with previous peaks subtracted.

When Guess Peaks window is open you can see the preview of guessed peaks on Fit Plot. This preview is updated every time you change the parameters in the window.

Guess peaks dialog

See Also

Predefined Fit Curves Equations

All predefined Fit Curves are listed in this table. You also can specify . Unlike custom fit equations these curves can be adjusted with mouse on Fit Plot.

Name	Formula	Parameters Meaning	Additional Properties
Line	a --- linear b --- constant
Parabola	a --- quadratic b --- linear c --- constant	Vertex:
Spline	Natural cubic spline, on each i-th piece:	xN --- anchor point x-coordinates yN --- anchor point y-coordinates
Gaussian	a --- amplitude dx --- half width at half maximum (HWHM) x0 --- maximum position	Area (integral): Standard deviation:
Gaussian-A (area-normalized)	a --- area (integral) dx --- half width at half maximum (HWHM) x0 --- maximum position	Amplitude: Standard deviation:
Lorentzian	a --- amplitude dx --- half width at half maximum (HWHM) x0 --- maximum position	Area (integral):
Lorentzian-A (area-normalized)	a --- area (integral) dx --- half width at half maximum (HWHM) x0 --- maximum position	Amplitude:
Gauss Derivative	Parameters are the same as for original Gaussian: a --- amplitude dx --- half width at half maximum (HWHM) x0 --- center position	Area of original Gaussian (second integral): Standard deviation: Peak-to-peak horizontal: Peak-to-peak vertical:
Lorentz Derivative	Parameters are the same as for original Lorentzian: a --- amplitude dx --- half width at half maximum (HWHM) x0 --- center position	Area of original Lorentzian (second integral): Peak-to-peak horizontal: Peak-to-peak vertical:

See Also

Export Curves as Table

Fit Curves and Fit Sum are treated as function equations in MagicPlot Fit Plots. But in some cases (e. g. to export and plot fit data with other application) you may want to create (x, y) table with Fit Curves y-values. For this purpose use Tools -> Export Curves as Table menu item when Fit Plot is active. This dialog is also available for Figures.

You can either add new Table to a Folder in current Project or export table to a text file.

Export Curves as Table Dialog

Data Processing

Setting Column Formula

There are two ways to set formula for column evaluation:

1. Select column and write formula in formula string.

2. Use Table -> Set Column Formula menu item to open column formula dialog window. See for details.

Set column formula dialog

Row Index

Variable i contains the current row index. Rows are enumerated from 1.

Rows Evaluation Order

Rows are always evaluated one after another from the first to the last in the specified range. Accordingly the row number i is incremented after each step.

Example

You can use this behavior to calculate factorial: set 1 in the first row of column A and after that set formula cell(A, i-1) * i and rows interval from 2 to 100. Note that formula is to be set for rows beginning from the second, and not from the first. You will get the factorial of row number (i).

Using Table Data

There are two functions to obtain current table cell values in formula:

col(A) -- returns the value of cell in column A in the current (i-th) row. Equivalent to cell(A, i).

cell(A, 3) -- returns the value in column A and row 3.

You can use either upper-case letters (A...Z, e.g. col(B)) or numbers (1, 2, 3,.., e.g. col(1)) in columns numeration in arguments of col and cell functions.

Example

col(A) + 15 + cell(B, i+1)

Auto Recalculation on Data Change

MagicPlot can automatically recalculate formula when data in used columns are changed. Set Auto Recalculate checkbox to enable this feature.

Example

Set formula col(A)*2 for column B and set Auto Recalculate checkbox. Column B will be recalculated if you change values in column A or column A is updated by other formula or processing algorithm (e.g. integral, derivative of other column).

Formula Menu in Column Context Menu

You can edit column formula and change auto recalculation mode from column context menu or menu Table. Select exactly one column and open context menu to view this menu items.

Formula Menu

“Argument is out of range at row #” Warning

Some mathematical functions can be defined only on a certain interval. For example, square root (sqrt(x)) is not defined for negative numbers (all calculations in MagicPlot are made in real numbers, not complex). Hence if the argument of sqrt is negative, a is returned. If a NaN value occurs in some part of formula, the result of calculation will also be a NaN, and corresponding table cells will be empty.

The calculations are not terminated if NaN value occurs in some row(s).

In some cases you may want to check if a NaN values occurs in calculations. MagicPlot shows the warning “Argument is out of range at row #”. This row number is the first row in which NaN value was returned. MagicPlot also highlights the function or operator which first produces NaN value.

See Also

Integration

Open Table or Figure or Fit Plot with initial data and select Processing -> Integrate menu item.

Baseline Correction

If your initial data to be integrated contains a baseline (usually constant or linear), you may want to subtract it from data before integrating. (A constant baseline will result in linearly growing integral.)

In such case the algorithm may be the following:

Create Fit Plot with your initial table data

Add a Fit Curve which simulates the baseline. You may specify a custom equation

Specify Fit Interval so that it contains only noise points

Fit the data by clicking Fit Sum button

Subtract the baseline fitting curve from data by checking Baseline checkbox in curves list

Use menu Processing → Integrate to integrate the plotted data without baseline.

Algorithm

To perform integration you should specify two columns: x and y. Missing values are ignored.

MagicPlot uses trapezoidal rule to compute the integral:

See Also

Differentiation

Open Table or Figure or Plot with initial data and use Processing -> Differentiate menu item.

Algorithm

To perform differentiation you should specify two columns: x and y. Missing values are ignored.

MagicPlot uses central difference formula to compute the derivative:

First and last points (i=1 and i=N) are computed as follows:

See Also

Fast Fourier Transform (FFT)

Open Table or Figure or Plot with initial data and use Processing -> Fast Fourier Transform menu item to perform FFT.

Fast Fourier transform algorithm computes discrete Fourier transform exactly and is used to considerably speed up the calculations.
Note that FFT is not an approximate method of calculation.

Parameters

Sampling Interval	Sampling interval of original data Δt is used to compute the data in resulting sampling column. MagicPlot calculates sampling interval as a difference between second and first values in Sampling column. You can set sampling interval manually in Sampling Interval field. Note that using of discrete Fourier transform implies that the samples in your original data are equally spaced in time/frequency, i.e. the sampling interval is constant. If the sampling interval is varying or real and/or imaginary data contains empty cells in the middle, the result of discrete Fourier transform will be incorrect.
Real, Imaginary	Columns with real and imaginary components of data. If your data is purely real, select <none> imaginary item
Forward / Inverse	Transform direction (here Inverse also equals to Backward)
1/N in forward transform	Divide forward transform result by number of points N (see formulas table). If your original data is real, you may want to additionally multiply the result by 2 to get the true amplitudes of real signal. Also referred as Normalize in some other applications.
Center zero frequency	If selected, after forward Fourier transform the two parts of spectrum will be rearranged so that the lower frequency components are in the center; the opposite rearrangement of spectrum will be done before inverse transform if any. Also referred as Shift FFT in some other applications.

Algorithm

MagicPlot uses the algorithm of FFT that does not necessarily require the number of points N to be an integer power of 2, though in such a case evaluation is faster. MagicPlot uses jfftpack library (a Java version of fftpack).

Discrete Fourier Transform Formulas

By default MagicPlot uses 'electrical engineering' convention to set the sign of the exponential phase factor of FFT: forward transform is computed using factor -1. Most scientific applications use factor -1 in forward transform as MagicPlot does by default. But note that the sign of exponential phase factor in Numerical Receipts in C, 2nd edition, p. 503 and in MATLAB package in forward transform is +1.

Factor −1 (Default)
1/N in forward transform	Forward Transform (Signal->Spectrum)	Inverse Transform (Spectrum->Signal)
Checked (Default)
Unchecked

Factor +1 (Scientific)
1/N in forward transform	Forward Transform (Signal->Spectrum)	Inverse Transform (Spectrum->Signal)
Checked (Default)
Unchecked

Here cn are complex signal components and Cn are complex spectrum components, n = 1...N. The only difference is in the sign of exponential phase factor and 1/N multiplier.

Note: if you expect to get the original data when doing an inverse FFT of forward FFT, set the 1/N in Forward Transform, Center Zero Frequency and Factor options the same for forward and inverse transforms.

Amplitude and Phase Columns Formulas

Because of using atan2 function the phase is unwrapped and is in range (−π, π]. The result of atan2(y, x) is similar to calculating the arc tangent of y/x, except that the signs of both arguments are used to determine the quadrant of the result.

Sampling Column Formulas

Sampling column contains frequency samples if forward transform is performed and time samples in case of inverse transform.

Center zero frequency	Formula	Sampling Column Values
Unchecked
Checked

Here Δt is given sampling interval of initial data (time for FFT and frequency for IFFT), n = 1...N.

Missing Values in the Original Data

Fourier transform implies that the original samples are uniformly distributed in time (for forward transform) or frequency (for inverse transform).

Missing values in the middle or in beginning of original data columns are treated as zeros, the result of Fourier transform may be incorrect.

Missing values in the end of the column are ignored.

See Also

Page moved to .

Calculating Integrals and Statistics on Intervals using Fit Plot

Setting of intervals in Fit interval tab of Fit Plot was initially intended for specifying the range of data which are used for fitting by sum of fit curves. However, this tab can also be used to calculate integrals and statistics on these intervals. Data-Baseline is used to calculate the results.

Peak Moments

MagicPlot can integrate data on selected intervals and calculate peak moments (x mean, variance, skewness, kurtosis). Spectrum line is treated as probability distribution curve: x values are treated as 'independent variable' and y values are treated as 'probability'. Standard statistical formulas are used to calculate moments (see below).

Statistical data and integrals are automatically updated if x or y data are changed or intervals are changed.

Integration on intervals

All statistical data are summarized in the intervals table:

Statistics on intervals

Managing Intervals

Move interval borders with mouse. Double click on interval to split it at desired position. Right click opens context menu from which new intervals can be created on free space and existing intervals can be deleted or split.

Relative Integrals Calculation

MagicPlot can calculate relative integrals to compare the relative intensity of spectrum lines. To compute relative integrals set Relative integrals checkbox. MagicPlot designate the smallest integral as 1, but you can enter a custom value. If you want to set not the smallest integral as a reference point, enter 1 first and then enter the value of desired integral relative to 1 into this field, so that other integrals will be calculated relative to this new value.

Computational Formulas

Central moments are calculated as follows (see table). All sums are calculated using compensated summation. Central moments are calculated on second pass after Mean calculation.

Property	Formula
n	The number of non-NaN (x,y) points
Y Sum (normalization)
X Mean (first moment)
2, 3, 4th Central moments

MagicPlot uses the following formulas to calculate intervals statistics:

Property	Formula
Integral	Calculated using
X Mean (expected value)
Variance
Standard deviation
Skewness
Kurtosis

See Also

Visual Data Navigation

Scale Scrolling for Data Navigation

MagicPlot provides useful plot data navigation (scale scrolling and zooming). Here are several tools and methods:

Mouse wheel rotation inside the current Axes box scrolls x/y or zooms x/y scale. Ctrl and Shift keys toggle the mode

Scale box zoom tool

Hand tool (only if the image zoom is 1x, otherwise the while image will be scrolled in window)

Right mouse button dragging always works as Hand tool (except Mac OS X)

The scrollbars (only if the image zoom is 1x, otherwise the while image will be scrolled in window)

Scale buttons on the toolbar.

Scale and tools buttons

Do not Confuse Scale Scrolling and Image Zoom

Scale scrolling affects the x/y scale minimum and maximum values. Use scale scrolling for data navigation

enlarges the entire image. Use image zoom for accurate drawing of small objects.

Current Axes

If your Figure contains more than one Axes box, MagicPlot indicates which Axes are currently selected with blue circle sectors in the corners of Axes box. The current Axes selection affects the action of scale buttons and Add to Selected Axes item in Table context menu. It also helps you to distinguish the Axes when you change style in the Figure Properties dialog window.

Axes selection buttons

See Also

Reading Plot Data, Measuring Distances, Curves Selection

MagicPlot shows mouse cursor data coordinates in status line. If you have several axes on one Figure, cursor coordinates relative to selected axes are shown.

Crosshair Cursor

MagicPlot can draw crosshair cursor. To turn it on use View -> Crosshair Cursor menu item.

Crosshair cursor and its coordinates

Reading Plot Data

MagicPlot denotes the data point under the mouse cursor with square brackets. The accurate table value in this point along with table name, row and column numbers is shown in status line in the bottom of main window in the following format:

Folder | Table [x column; y column][row] = (x value; y value)

Reading plot data

Curve Context Menu

Curve context menu on Figure

Use context menu of the Curve to open table with data or to open properties dialog.

Measuring Data Distances with Scale Zoom Tool

You can use Scale Zoom tool to measure the distances on plots. MagicPlot shows the distance in status line when you select zoom box by mouse dragging. You can press Esc or reduce box size to zero before releasing mouse button to prevent zooming if you want only to see the distance. If multiple axes are located under cursor MagicPlot will show the distance in terms of current axes (showed with blue corners).

Distance measurement

Selecting Curves in Turn Using Keyboard

Curves on Figures and Fit Plots can be selected with mouse click. You can also select Curves in turn using Arrow keys or Tab/Shift+Tab keys:

→ or ↓ or Tab selects the next Curve

← or ↑ or Shift+Tab selects the previous Curve.

If no Curves are selected the first pressing on these keys will select the first Curve. If the Figure contains multiple Axes, the Curves in all Axes are accessible in turn by this method.

Curve 1 is selected Curve 2 is selected

See Also

Editing Figures

Adding and Arranging Axes Boxes on a Figure

You can add a new Axes box to a Figure using the Add menu either in the Figure window or in the Figure properties dialog.

The Add & Arrange Axes as Table menu item can also be used for arranging of the existing Axes boxes as a table.

Add Axes menu in Figure window

Add Axes menu in Figure properties window

'Add and Arrange Axes as Table' Dialog

This dialog opens by selecting Add & Arrange Axes as Table menu item. It may be used for adding new Axes boxes and for arranging the existing Axes boxes without adding a new one.

Arrange Axes as table dialog

Moving and Resizing of an Axes Box

Axes box can be moved and resized as any other drawn object on the Figure canvas

Click on the Axes box border to select it. The green markers identifying your selection appear.

Drag Axes box border to move the Axes box on Canvas.

Draw border marker to resize Axes Box.

The toolbar can also be used to set exact Axes box size and position. Open the Dimensions toolbar and select an Axes box to edit the values.

Drawing Dimensions toolbar

See Also

Specifying Axis Multiplier, Prefix and Suffix

Adding and Arranging Curves on Figure Axes

The best way to create a Figure with desired data is to select x and y data columns in Table and use Create Figure in Table context menu.

There are different ways to add data to existing Figure:

Select x and y columns in table with data, open table context menu (right click) and select Add to Selected Axes sub-menu. All currently opened Figures are listed in this sub-menu.

Open Figure Properties window and go to Axes Properties -> Components tab. Here you can select the Table in the project tree and press Add to Axes button.

Copy and paste Curve from Fit Plot or another Figure to your Figure.

You also can add Fit Curves or Fit Sum from Fit Plot to Figure.

Changing Curves Drawing Order

To change Curves drawing order and legend entries order open Figure Properties dialog and go to Axes Properties -> Components tab. Drag rows in table to reorder. You can also use Up and Down buttons or press Alt + up/down keys (Option + up/down keys on Mac) to move selected row in table up or down.

Curves reordering in Figure properties dialog

See Also

Specifying Axis Multiplier, Prefix and Suffix

Shifting Curves on Figure and Creating 2D Waterfall

MagicPlot allows you to set individual x and y shifts for every Curve on Figure. This feature may be used to compare several similar Curves on one Figure.

2D Waterfall Figure

Specified Curve shifts do not affect your data and are used only for drawing current Figure.

Curve shifts can be set in X Shift and Y Shift columns in Axes Components table (scroll table right if these columns are not visible). Waterfall menu contains items for making and resetting 2D waterfall and reversing curves order.

Reset Shifts sets all x and y shifts to zero

Make Waterfall automatically calculates shifts and arranges Curves

Make Waterfall menu item opens waterfall window in which you can specify shift increment. MagicPlot tries to guess handsome shift values on the basis of number of curves and current scale.

Waterfall window

See Also

Specifying Axis Multiplier, Prefix and Suffix

Using Figure Templates

Figure Templates is a powerful tool for reusing axes layout of previously created Figures. To use Figure Templates, open Figure Properties window and select Templates tab.

Templates are stored in a special folder in your operating system account profile. Project files do not contain templates; changes in Projects do not affect Templates.

Figure Templates Tab

Saving Template from Figure

To create a template from Figure open the Figure Properties window, select Templates tab and press 'Save Template' button. Then enter the new template name in opened dialog window.

MagicPlot always saves all available information in the template (not regarding on checkboxes state).

Applying Template to a Figure

To apply template to figure open the Figure Properties window and select Templates tab. Select desired template in the saved templates list. Then check or uncheck boxes with features to apply and click on 'Apply Template' button.

When you apply a template to Figure, the properties are copied from template to Figure. Note that the Figure style will not be changed if you change the template after you have applied it to Figure. The project file is standalone and you do not need the template to open project.

You can undo applying template in a standard manner (no need to close the Figure Properties window).

See Also

Specifying Axis Multiplier, Prefix and Suffix

Drawing and Editing

Axes Style Editing

Axes style can be set in Figure Properties window (or Fit Plot Properties for Fit Plot). This window contains multiple tabs with axes drawing settings.

Figure Properties window

Drawing on Figures and Fit Plots, Image Zoom and Objects Selection

You can draw the following kinds of objects on Figures and Fit Plots:

Text labels with formatting support

Lines

Arrows

Rectangles

Ellipses

Inserting images

Drawing buttons on the toolbar

Select an appropriate instrument in the toolbar to draw an object.

The properties of selected objects can be changed in the inspector toolbar (the second row of toolbar).

Image Zooming

If you need to precisely draw some small objects you can zoom in the image using slider in right bottom (Pro only).

There are several alternative ways to change the image zoom:

Scroll the mouse wheel at the image zoom slider

Ctrl+scroll (Cmd+scroll on Mac) mouse wheel at blank part of plot (outside all axes boxes)

The button 1x and Alt+click (Option+click on Mac) on plot fits the image to the window.

Image zoom slider and buttons

Do not Confuse Scale Scrolling and Image Zoom

affects the x/y scale minimum and maximum values. Use scale scrolling for data navigation

Image zoom enlarges the entire image. Use image zoom for accurate drawing of small objects.

Objects selection

Every object can be selected by clicking on its border or inside it. Hold Ctrl key (Windows, Linux) or Shift key (Mac OS) and click another object to add it to current selection.

Moving an Object Forward or Backward

When objects overlap, you can change the order of objects drawing. Use Bring to Front and Send to Back items in object context menu (right click on object to open menu).

Ellipse context menu

Changing Curves Order on Figure

You can change the order of drawing the curves on Figure. The curves order can be set in Figure Properties window, Axes Properties tab -> Components tab. Select desired curves in list, then hold Alt and press up/down arrow keys. You may also use Move Up and Move Down items in Waterfall button menu.

Snapping to Other Objects

When you drag an object or change its size, MagicPlot will try to snap the bounds of this object to other objects. While snapping MagicPlot shows you a red ruler and an object to which the bounds are snapping. If you do not want to align your objects this way, hold Ctrl key to disable snapping.

Snapping to other objects

See Also

Colours and Opacity Adjustment

In MagicPlot you can set the opacity of each object (curve, text label, rectangle, etc.) to make it semi-transparent. Opacity is treated as a property of object color. You can set opacity in Opacity sub-menu in color pop-up menu which opens by clicking on color button. Opacity percentage is shown on colour button.

Color pop-up menu

See Also

Creating Transparent Figures and Fit Plots

To create an image with transparent background open Figure Properties or Fit Plot Properties dialog window and set Transparent Background radio button in Canvas tab.

The background of transparent Figures and Fit Plots is shown with a grey-and-white chequerboard. If you are preparing a picture for a dark background you can change the colour of chequerboard to dark grey by selecting View -> Transparency Checkerboard in main menu.

In case of transparent background you can set the preview background colour in window.

Transparent figure example

See Also

Using of Dimensions Toolbar

This toolbar is intended for precise setting of the position and size of one or more selected drawn objects on Figure or Fit Plot.

You can open Drawing Dimensions toolbar by selecting Tools -> Drawing Dimensions in main menu. Dimensions toolbar may be left opened.

Drawing Dimensions toolbar

Drawing Dimensions toolbar shows the coordinates and size of currently selected object(s). You can also specify the coordinates or size of several components.

The x value is measured from the left edge of the canvas.

The y value is measured from the top edge of the canvas.

For rectangle or ellipse the specified coordinates determine the position of the upper-left corner.

For text label:

x determines the left edge, center or right edge of text according to text alignment of label.

y determines the baseline position of the first line.

For line or arrow the specified coordinates determine the position of the beginning.

Switching Curves Antialiasing on the Screen

Antialiasing off	Antialiasing on

You can toggle curves antialiasing (smoothing) by selecting View -> Curves Antialiasing in main menu.

Please note that antialiasing may slow down the drawing if you have many data points (~100K).

Text Labels Editing

Inserting Special Symbols and Greek Letters

MagicPlot supports any Unicode symbols, including Greek letters and many special symbols.

The help on inserting Greek letters and special symbols is also available in Help menu.

Typing Greek letters with Keyboard Shortcuts

To insert Greek letter type Ctrl+G (Command G on Mac OS) and then type Latin letter mentioned in the table below.

Greek Letter Name	Greek Symbol	On Keyboard (Ctrl+G, then)
Alpha	Α α	A a
Beta	Β β	B b
Gamma	Γ γ	G g
Delta	Δ δ	D d
Epsilon	Ε ε	E e
Zeta	Ζ ζ	Z z
Eta	Η η	H h
Theta	Θ θ	Q q
Theta (alt.)	ϑ	J
Iota	Ι ι	I i
Kappa	Κ κ	K k
Lambda	Λ λ	L l
Mu	Μ μ	M m
Nu	Ν ν	N n
Xi	Ξ ξ	X x
Omicron	Ο ο	O o
Pi	Π π	P p
Rho	Ρ ρ	R r
Sigma	Σ σ	S s
Tau	Τ τ	T t
Upsilon	Υ υ	U u
Phi	Φ φ	F f
Phi (alt.)	ϕ	j
Chi	Χ χ	C c
Psi	Ψ ψ	Y y
Omega	Ω ω	W w

Inserting Math Symbols with Keyboard Shortcuts

To insert math symbol type Ctrl+M (Command M on Mac OS) and then type symbol mentioned in the table below.

Symbol name	Symbol	On Keyboard (Ctrl+M, then)
Multiplication sign	×	* or x
Middle dot (multiplication)	·	. (dot)
Division slash	∕	/
Minus sign	−	-
Plus-minus sign	±	+
Minus-plus sign	∓	=
Not equal	≠	n
Infinity	∞	8

To see the full list of shortcuts select Help -> Insert Greek Letters and Math menu item.

Inserting Special Characters by Character Sequences

To insert the following special characters, simply type character sequences, as shown in the table below. Character sequences will be replaced with special characters when you exit the edit mode (but only if selected font contains required symbols).

You can disable auto replacing in Typography tab of MagicPlot Preferences.

Symbol name	Symbol	Char sequence
Em dash	—	---
En dash	–	--
Ellipsis	…	...
Much less than	≪	<<
Much greater than	≫	>>
Less than or equal to	≤	<=
Greater than or equal to	≥	>=
Plus-minus sign	±	+/-
Minus-plus sign	∓	-/+

Unicode Code Point Finding out

MagicPlot shows in status bar the Unicode code point of character highlighted in text label. To view code point select exactly one character in text label in Figure of Fit Plot.

Code Point in status bar

See Also

Advanced Typography Features

MagicPlot provides accurate typography in text labels and axes labels. You may toggle some features in 'Typography' tab of MagicPlot Preferences.

Typography tab in MagicPlot Preferences window

Ligatures Support

MagicPlot supports Latin ligatures in text labels. If you type 'fi', 'fl', etc., those symbols will be shown with ligature glyphs when you exit edit mode.

Edit mode
Result

MagicPlot supports at least the following ligatures:

fi, fl

ff, ffi, ffl

Not all fonts contain ligature glyphs. MagicPlot displays ligatures only if the glyphs are included in used font. You can turn the ligatures off in MagicPlot preferences.

Mathematical Symbols in Axes Labels

The numbers in scientific notation need two special characters if you want the typography to be accurate: minus sign and multiplication sign. Many graphing software applications which use simplified typography use letter 'x' and hyphen-minus (-) in numbers instead of typographically correct special characters. This simplified typography was mainly used in old applications which do not support Unicode.

MagicPlot can use either correct symbols (default) or simplified. You can change this option in MagicPlot Preferences.

Minus Sign

Various minus-like characters are used in different cases and have different height and length. The height and length of minus sign are equal to those of plus sign and correspond to the size of digits in the font. Here is a comparison of these characters:

Plus and minus signs

When you edit some text, keyboard minus key enters hyphen-minus character. The correct minus character can be typed in text label by pressing Ctrl+M, -, see Inserting Special Symbols for details.

Multiplication Sign

In different languages, multiplication signs differ. In most cases you have to use either '·' or '×' sign. You also can specify any special character or character sequence, for example enter spaces before and after multiplication signs.

Multiplication sign Correct minus sign
Middle dot Correct minus sign
Simplified typography: Latin letter 'x' hyphen-minus instead of minus

See Also

Image Exporting and Copying

Image Export

To export Figure or Fit Plot image click on Project -> Export Image menu item or use corresponding toolbar button. You can set various options of file export format by clicking on Format Options button in Export Image dialog window.

You can also to clipboard.

Raster Image Formats

The following lossless raster graphics formats are supported:

PNG --- the most suitable format for Fit Plots and Figures

GIF --- supports only 256 colours and no transparency, out-of-date format

BMP --- uncompressed raster format (large file size)

Setting the resolution of exported raster image

Image resolution for raster export can be set individually for every Figure and Fit Plot in Canvas tab of the Properties window. The default resolution is 300 DPI.

Why is MagicPlot not capable to export images in JPEG format?

JPEG is a commonly used format of lossy compression for photographic images. The JPEG compression algorithm is at its best on photographs and paintings of realistic scenes with smooth variations of tone and color. However, JPEG is not suited for line drawings and other textual or iconic graphics, where sharp contrasts between adjacent pixels cause noticeable artefacts. Such images are better saved in a lossless raster graphics format such as BMP, GIF, PNG or vector graphics formats.

PNG and JPEG Comparison 1) If you use Opera browser with Opera Turbo option the images will appear recompressed in JPEG format and this comparison is void.
PNG	JPEG

Vector Image Formats

The following vector graphics formats are supported:

PDF

EPS

SVG --- most suitable for web publications

EMF --- the most suitable format for inserting in Windows applications like Microsoft Office

Export in vector graphics formats by virtual printer

You also can use third-party virtual printer software to save an image in vector graphics format (use Project -> Print menu item).

Image Format Restrictions

BMP:

Transparent background is not supported.

GIF:

Transparent background is supported but semi-transparency is not. Only 256 colours.

EMF and vector copy on Windows:

No semi-transparent colors (but transparent background is supported).

Image may be opened without antialiasing in some applications.

Text tracking changing is not supported

EPS:

Transparency is available only in Acrobat Distiller. Set Allow Pdfmark Transparency checkbox in EPS format options, add /AllowTransparency true into Acrobat Distiller's .joboptions file.

Transparent images inserted on plots will have solid color background.

Raster image copying:

Transparent background is not supported.

See Also

Preview Image

Use Project -> Image Preview menu item to open image preview window. You can also use the Preview button of the toolbar or Ctrl+Shift+P keyboard shortcut (Cmd+Shift+P on Mac).

Preview Features

In preview mode you can:

Preview in gray scale

Transparent images can be previewed on selected background color

Change the zoom of the image

Image Preview window

Preview Zoom Options

There are several options for the size of preview:

Percent of real size. Note: The size will be actually real only if the dots per inch (DPI) is correctly set in your operating system

Fit to Window, Fit Width, Fit Height --- fits the size of previewed image to window dimensions

Pixel-to-Pixel --- allows you to see the accurate image that you will get using export in raster image format. The resolution of exported raster image is evaluated as a product of canvas size and DPI value specified in Canvas tab of Figure/Fit Plot Properties window.

Copying Images to Clipboard

When you edit a presentation or report, it is very useful to paste images from MagicPlot to another application directly through clipboard without saving them.

MagicPlot supports copying images to clipboard in both raster and vector formats from Edit menu. Transferring vector images is always preferable because these images are scaled more precisely. However, we have found that some applications do not support pasting vector images, or paste vector images with distorted text. In this case, please use copying raster image.

See Also

Tools

MagicPlot Calculator

MagicPlot Calculator is a useful formula calculator built in MagicPlot. To open calculator use Tools -> Calculator menu item.

Using calculator outside MagicPlot

Calculator window stays on top when MagicPlot main window is minimized to task bar (Dock on Mac), so you can use the Calculator when working with other applications.

Heron's formula in MagicPlot Calculator

Using the Calculator

Type expression like (12+4)*sin(pi/2) and press Enter to get the result

Type a=5 to set variable a to 5

Use Up/Down keys to recall previously entered expressions

Use ans variable or press Ctrl+Up to insert the result of latest operation

Standard functions and variables (sin, cos, pi, e, etc.) are supported

MagicPlot Calculator uses the same as other formula fields in MagicPlot application.

See Also

Appendices

MagicPlot Full Release History

MagicPlot 3.0.1, Bug fixing release, May 06, 2021

0000631: [Plots] Add switchable ticks for custom grid lines/labels

0000483: [Other] Remove confusing 'Hide title bar' menu item in Mac OS

0000641: [Batch Processing] Batch Processing: the imported tables order is reversed

0000285: [Other] Palettes folder does not open if no palettes were saved (folder is created only when saving the first palette)

0000640: [Other] Colormap palette RGB values with begin spaces cannot be imported

0000639: [Plots] Copy inserted image to the clipboard

0000633: [Other] Error on redo of deleting rows with existing fit plot

0000629: [Drawing] Unnecessary full plot redraws instead of caching (regress)

0000630: [Other] Update to FlatLaf 1.1.2 look and feel: inline main menu (on Windows), plot focus border

MagicPlot 3.0, Major update, January 18, 2021

See also: Introducing MagicPlot 3.0

0000626: [Table] When opening column formula dialog from the inspector, entered incorrect formula is missing

0000625: [Plots] Do not apply auto scale (zoom) when adding first curve if scale is set manually

0000061: [Other] Make new icons for project items (tables, fit plots, figures)

0000384: [Other] Implement multi-resolution icons support

0000086: [Plots] Implement (update) Mac OS X Retina and Windows/Linux HiDPI support

0000617: [Other] Implement HiDPI support for StyleView, style icons, comboboxes, PaletteView

0000605: [Other] ColorButton HiDPI support

0000593: [Other] MagicPlot won't start if templates folder is missing

0000488: [Drawing] When several lines are ploted only the first one is solid, others by default are dashed

0000499: [Other] Remove Student edition and make Pro functioning in limited mode after trial ending

0000623: [Other] Typed text is suddenly selected when renaming a project tree entry, selected part is erased by subsequent typing

0000621: [Other] Axes range fields in properties dialog are incorrectly updated when typing and deleting with backspace

0000516: [Batch Processing] Batch processing error if new tables have more rows than template table

0000374: [Other] Add new look and feel support

0000619: [Plots] Switch selection and resizers rendering canvas size to the canvas size used for HiDPI rendering

0000239: [Plots] Update Waterfall window with current X-Y shift values

0000569: [Other] Add 'Create new folder' toolbar button

0000615: [Plots] Color map legend (color bar) 'auto positioning' is not restored on undoing its move

0000611: [Plots] Open text editor on plot is not properly disposed when window is closed

0000610: [Table] Error in formula auto recalculation for zero rows number

0000607: [Image Export] Set the resolution of copied raster image to the resolution of exported file

0000496: [Other] Color map step auto recalculation update and undo

0000603: [Plots] Preserve zero scale limit when zooming in/out with toolbar buttons

0000472: [Plots] Scale fields in inspector toolbar are not updated after setting log scale and auto changed range.

0000601: [Other] Toolbar and Inspector toolbar are not always updated after closing last internal frame

0000145: [Processing] Add special functions (bessel, erf, etc) and ctg, mod functions to formula syntax

0000599: [Plots] Add vertical and horizontal dash line as markers

0000600: [Plots] Add join and dash line end setting to preferences

0000565: [Plots] Allow zero values for 1) Width of caps of error bars 2) Marker edge width 3) Marker size

0000580: [Other] Use -XX:MaxRAMPercentage=75 heap size parameter for all distributables.

0000543: [Plots] Axes number selection in Figure Properties dialog does not work when double click on axis tick labels

0000598: [Plots] MacOS: Some custom cursors are located incorrectly

0000573: [Other] Fix opening properties by doble click gesture (only left button double click must work)

0000597: [Plots] Cannot clear selection on plot if Fit Interval tab is selected in Fit Plot

0000596: [Processing] Implement xor(a, b) function

0000551: [Processing] Implement negation operator (!) in formula

0000595: [Processing] Change boolean specification: true is != 0 instead of > 0

0000583: [Other] Created copy of a Project element must be inserted after the original instead of the end of the list

0000515: [Other] On MacOS main menu is not blocked by progress dialog

0000590: [Import] Empty column names are skipped on import

0000585: [Other] Add comments to formula syntax

0000584: [Other] Java 6 inspired bug: round(0.49999999999999994) = 1

0000582: [Other] Show function parameter names in function reference

0000561: [Plots] Canvas raster buffer size is not updated properly when changing the screen scale

0000514: [Other] Cmd+H keyboard shortcut on MacOS is used by system, replace with Shift-Command-H (Ctrl+Shift+H)

0000548: [Fitting] Do not add Data-Baseline column by default, replace it with 'Add curve to table' context menu

0000549: [Fitting] Implement fit curve to column evaluation ('rasterization')

0000576: [Other] When copying color map plotable to another project with (table copy) the links to index columns are incorrect

0000484: [Drawing] Drawings are not snapped to canvas borders and center

0000570: [Other] In project tree inside Figure properties dialog moving Axes boxes and curves leads to creating a copy instead of moving

0000571: [Other] Drop target in Project tree with axes boxes and curves visible can be incorrect if only part of children is visible in the tree

0000510: [Other] Add 'Create new folder' keyboard shortcut (Ctrl+Shift+N, Shift-Command-N on Mac OS)

0000568: [Other] The title of Export menu item in Project menu is not updated according to selected in project tree or active window

0000552: [Other] If Project Tree is not focused, it will not get focus when opening context menu on right click.

0000530: [Other] Pasting a fit curve from another project comes with pasting data table from original fit plot

0000527: [Plots] Color map with manually set inverted range and axis scale from bigger to lower is drown as non-inverted

0000567: [Other] Adding table curve to multiple selected figures when copy-pasting table

0000564: [Other] When pasting to multiple selected locations, dependent components must be copies only once

0000563: [Other] Draw instrument is not preserved when switching internal windows

0000562: [Other] Corrupted Fit Plot structure is pasted between the projects if canvas (Figure of Fit Plot) or curves table is focused

0000171: [Table] Simplify inserting fit formula into column formula (add x=$A; in fit report)

0000172: [Processing] Unified formula syntax (setting variable values in formula)

0000553: [Processing] Syntax highlighting: show all usage of variable or function under cursor

0000556: [Architecture] Re-implement formula syntax highlighting

0000155: [Table] Multiple column formulas

0000546: [Table] Reverse order row calculation in column formula dialog

0000557: [Other] Implement permanent parse error highlighting with wavy line

0000056: [Fitting] Add Undo capability to formula editor

0000554: [Other] Incorrect braces highlighting in formulas with line breaks after paste on Windows

0000532: [Architecture] Use HashMap back to speed up indexOf() for AbstractProjectComponent children

0000443: [Other] Annoying restoring of open windows after closing one of them maximized

0000256: [Processing] Add empty cell (NaN) check function in column formula sintax

0000463: [Table] Simplify function syntax col(A) and cell(A, 1) with $A and $A$1

0000385: [Table] Constants A, B,... are not properly converted without col() if appropriate column is deleted

0000534: [Table] Inspector toolbar update and table scroll is slow when adding 1000 rows to 10000 column table

0000181: [Table] Column moving lag

0000541: [Architecture] Memory leak on project closing

0000097: [Table] Focus (selection) after entering column name: first row instead of last row

0000464: [Other] Slow performance of JComboBox columns selector for big column count (10000)

0000526: [Other] Error in undo table creation after formula editing

0000508: [Other] Quick plot is not updated after column recalculation

0000525: [Processing] Add Columns/Rows selector to Descriptive Statistics dialog

0000521: [Other] Annoying selection in Project Tree when closing non-active window

0000522: [Plots] The legend background box does not account multi line text (regression)

0000402: [Other] Cannot put fit curve to the end of fit curves list in some circumstances

Note: Some internal architecture changes, refactoring and small fixes are not shown in this list of changes.

MagicPlot 2.9.3, Minor update, March 1, 2020

0000449: [Other] Error with saving project files on server

0000489: [Other] Saving read-only project file cause false 'old project file is corrupted' message

0000507: [Other] Remove project name from shown path to table in table and column selector

0000495: [Other] Add to Axes button may not work in Figure Properties dialog (regression)

0000500: [Plots] Column selection combobox is not updated when selecting another table in Curve properties dialog

MagicPlot 2.9.2, Minor update, November 27, 2019

0000485: [Other] Formula with consecutive new line symbols get damaged when opening in new version

0000487: [Plots] Drop table on figure causes table moving in project tree

0000477: [Plots] Do not auto rename axes (if name was edited) when pasting the first curve on figure

0000481: [Plots] Figure Properties does not open in there is no axes box on Figure

0000486: [Other] Pasted objects order is different on each paste

MagicPlot 2.9.1, Minor update, November 01, 2019

See also: Introducing MagicPlot 2.9.1-2.9.3

0000469: [Plots] When applying log scale, fix range from 'best view' if range <= 0

0000154: [Table] Column formula: 'j' variable for column number

0000076: [Plots] Add more available plot types into create plot menu

0000466: [Other] Projects are merged if opened simultaneously

0000468: [Other] MacOS: Progress bar must not show text over the bar

0000465: [Plots] Progress dialog border is truncated on the right on Mac OS

0000447: [Other] The dollar sign ($) is not saved correctly in column formula in project file

0000462: [Plots] Major tick and label may disappear on the boundary of the range

0000349: [Other] Add copy-paste context menu to fit parameters table

0000364: [Other] 'Add to current axes' figures list must be sorted like opened windows

0000335: [Drawing] Selection remain on all elements after Undo “Ungroupping”.

0000431: [Plots] Copy Fit Curve from Figure to Figure in another Project: style is taken from the source Curve on Fit Plot instead of Figure

0000453: [Other] Project entities are not pasted if some folder is not selected in Project Tree

0000452: [Plots] Histogram legend must be drawn with squares instead of lines

0000293: [Plots] Curve fill is not shown in legend

0000454: [Other] Edited fit curve interval remains visible after curve deletion

0000445: [Plots] Program hangs if colormap legend range is log-scale and starts from 0

0000451: [Plots] Program hangs with zero scale range (min=max) and when scrolling with inverted scale (max<min)

0000440: [Plots] Color Maps: X index from a separate column is truncated with the matrix rows count

MagicPlot 2.9, Major update, July 19, 2019

See also: Introducing MagicPlot 2.9

Starting with this release MagicPlot application executable is digitally signed by the developer. Note that in Mac OS build of MagicPlot the company name is displayed as 'MEDZHIKPLOT SISTEMS, OOO' instead of 'Magicplot Systems, LLC' due to transliteration issues.

MagicPlot nor more uses 'public' Java Runtime installed in the Windows and Mac OS X operating system. Java Runtime Environment (v. 12 or later) is now bundled with the executable.

0000428: [Fitting] Individual fit interval was not set from data range for guessed curves

0000424: [Plots] Y ticks and labels on the bottom disappear is axes box is dragged up and the top border is outside the screen

0000330: [Drawing] Group/ungroup operation is too slow if the group contains many items

0000421: [Plots] Right alignment and repositioning of numeric labels of colormap palette does not work

0000420: [Plots] Left/right axis labels left/right alignment (the opposite to the default one) is broken in export and is not saved in project

0000402: [Other] Cannot put a fit curve to the end of fit curves list in some circumstances

0000419: [Other] Cannot Cut curves from Fit Plot in Curves table (but cutting from plot area works)

0000418: [Table] Descriptive Statistics toolbar and Quick View toolbar are not updated after adding/deleting a column in a table

0000391: [Other] Export Curves as Table dialog: setting the rows count does not work in some cases

0000381: [Other] Project tree keyboard shortcuts: Enter to open selected

0000403: [Plots] Fit curve legend (style image) disappears when applying figure template with markers only.

0000360: [Other] License info is not saved and no error message appears

0000406: [Plots] Drawings disappear after grouping

0000197: [Plots] Best scale zoom does not take error bars into account

0000146: [Drawing] If rectangle rotated 90 degrees, scaling works awkwardly

0000352: [Plots] Ignore <= 0 values in log scale auto-scale zoom (best view)

0000362: [Drawing] Negative-width lines/arrows are not drawn on screen depending on the scale

0000365: [Plots] Manual increment for major ticks does not work if Multiplier is set

0000401: [Drawing] Changing drawing line ending causes double history command

0000379: [Plots] Fix scientific notation format in colormap legend

0000393: [Other] Curve style dialog opens outside of the screen

0000396: [Other] Fit Plot from just imported table is incorrectly named “B-Baseline”

0000369: [Other] Different operation when drag and dropping files on the tree and on the desktop pane

0000383: [Plots] Implement Mac OS Retina and Windows HiRes mode for plots rendering

0000377: [Drawing] Increase line sticking to vertical/horizontal

0000375: [Other] Inactive project window annoyingly blinks when autosaving

0000361: [Plots] Printed figure is corrupted: scale error

MagicPlot 2.8.2, Minor update, December 18, 2018

0000341: [Other] Add hotkeys for tabs (internal windows) navigation: Ctrl+[ and Ctrl+], Ctrl+1...9 (with Cmd on Mac)

0000229: [General] Please make Action: closing active window within MagicPlot with a shortcut, e.g. Ctr+W

0000319: [Other] Shortcut <Ctrl + C>, i.e. copy command, often does not work

0000345: [Batch Processing] Enable 'skip' checkbox for Template FitPlot in Fit Series dialog

0000316: [Other] Collapse all won't work on 2.8

0000320: [Plots] Color map properties: Column X does not work in some circumstances

0000321: [Plots] Error bars color: when marker and line is off, the color button is active but it does not work

0000326: [Table] Table transpose works incorrectly for text columns

0000334: [Other] Long task may be run when another long task is running in ProgressDialog

0000315: [Other] Error on saving if project file in Dropbox folder

0000329: [Drawing] When drag (rectangle) selecting, the group parts can be selected separately

0000336: [Other] Source data of evaluators in other Tables or Fit Plots is not copied (batch fitting summary, correlation, fft)

0000337: [Drawing] Grouped items are copy-pasted with an illegal shift in the same canvas

0000344: [Other] Context menu is not opened if cyclic dependency appears

0000346: [Other] Old-style links to DataCurve in FitPlot need to be replaced by clones on old project files reading

0000340: [Plots] Don't round values of plot data in the status bar

MagicPlot 2.8.1, Bug fixing release, September 06, 2018

0000314: [Other] Add feedback in case of JVM crash on font file opening or rendering (font name in thread name)

0000313: [Table] Regression: Table transpose does not work in some cases

0000312: [Plots] Multi-axes plots created in previous versions are displayed incorrectly in some cases (curves are mixed-up between axes)

Other minor fixes

MagicPlot 2.8, Major update, August 31, 2018

See also: Introducing MagicPlot 2.8

Added: 0000049: [Other] Full-functional project tree with nested folders and copy-paste support:

0000215: [General] Move up/down items in the project tree

0000047: [Plots] Fix copy/paste restriction: only components of one type (curves or drawings) can be copied

0000069: [Drawing] Add capability to copy axes box with all contents

0000059: [Other] Add project merging (add one to another) -- via copy/paste

Added: 0000058: [Other] Project autosaving

Added: 0000024: [Drawing] Drawn objects grouping

Added: 0000241: [Plots] Implement changing table in data curve dialog

Added: 0000106: [Plots] Add multi-column in legend

Added: 0000017: [Drawing] Creating empty Figure without axes boxes or deleting the rest axes box

Improved: 0000244: [Plots] Optimize colormap drawing

Improved: 0000225: [Other] Add symbol <Planck constant with bar> to the math symbol table

Improved: 0000282: [Other] Leave project file opened for cloud services work

Improved: 0000193: [Plots] Add warning about doubled values in x/y column of color map plot

Improved: 0000284: [Plots] Rename (clarify) properties context menu items

Improved: 0000023: [Drawing] Improved drawing objects sticking algorithm: all other objects are checked

Improved: 0000298: [Fitting] Add more max iterations in the drop-down menu in Preferences

Fixed: 0000223: [Plots] Adding of fitted data as Fit Sum to the main graph produces Thickness-2 roughly dashed line

Fixed: 0000222: [Plots] When Fill “To X-Axis” is applied to data shifted by waterfall result is not correct

Fixed: 0000232: [Plots] Waterfall shift values are mistakenly copied when creating Fit Plot from Figure with waterfall

Fixed: 0000202: [Other] Table and tree rows height is broken for HiDPI on Windows

Fixed: 0000295: [Import] UTF BOM chars are not ignored on the beginning of the imported file

Fixed: 0000299: [Import] NaN text is not recognized as a number in import and the column becomes text column

Fixed: 0000294: [Import] Disable empty lines skipping on import and pasting

Fixed: 0000296: [Plots] ColorMap is not replotted when x/y column data is changed

Fixed: 0000304: [Plots] Incorrect warning “Y column has missing points at the beginning” in Color Map Properties dialog

Fixed: 0000281: [Plots] ColorMap legend (colorbar) is not scaled with all image when changing the canvas size

Fixed: 0000219: [Other] Adding a new table puts it randomly, either in the selected folder or in a new folder

Fixed: 0000050: [Other] Print/Export Images in Project context menu and Ctrl+E, Ctrl+P must print all selected, not the one

Fixed: 0000289: [General] Out of memory error when dropping big project file on Figure canvas (tries to treat it as an image first)

MagicPlot 2.7.2, Bug fixing release, September 18, 2016

Fixed: 0000210: [Plots] Regress in 2.7.1: Negative minor ticks are not displayed in some cases.

Fixed: 0000206: [Other] Project Tree does not update after opening a project that does not exist.

MagicPlot 2.7.1, Bug fixing release, September 9, 2016

Fixed: 0000203: [Plots] Minor ticks count in Log scale cannot be set correctly.

Fixed: 0000198: [Other] 'Add & Arrange Axes' dialog box is opened under 'Figure Preferences' dialog in some cases.

Fixed: 0000117: [Image Export] White rectangle is created over the canvas in EPS when opening in selected applications (TeX's epstopdf converter was affected).

Fixed: 0000205: [Plots] Manual Increment entered is not multiplied by Multiplier.

MagicPlot 2.7, Major update, June 29, 2016

Introducing MagicPlot 2.7

Notes

MagicPlot 2.6 release was skipped.

The development was slow in 2014 and resumed in 2015; Plotvisor 2.0 application was released in Oct 2015.

Java 7 or later is now required on Windows and Linux/Unix, Java 8 or later on Mac OS.

The MagicPlot Pro 2.5.x license is valid for v. 2.7.x (it is a free update for current users).

Changes

Added: Color map plots (aka surface plot / heat map / 2D plots): non-uniform matrix support, interpolation support, Pro edition only [0000002]. See also: .

Improved: New dialog windows style (previously used only in Processing dialogs) [0000189].

Improved: Special symbols/characters dialog moved to Tools menu [0000057].

Improved: Replaced Java2D stroke normalization with explicit coordinates rounding [0000138].

Improved: Removed unused parts of eps prologue [0000112].

Improved: When template is applied, empty (in template) legends are kept as is [0000124].

Improved: Legend titles are 'overloaded' with column name when plotting the same columns from multiple tables [0000131].

Improved: Rounded ticks positions when using axis multiplier [0000104].

Fixed: Nonlinear fitting: When Y error columns are set, weights must not be normalized to calculate the correct chi square in the fit report [0000081].

Fixed: Fit Plot: Saving 'Sum', 'Data-Baseline' checkbox values to project and add undo for them [0000070].

Fixed: Inspector toolbar was not updated when selecting curves from Figure properties components table [0000188].

Fixed: Bug with changing scale type when deleting axes box [0000099].

Fixed: 'Custom grid lines' table behavior (focus) [0000160].

Fixed: Smoothing of a curve from Fit Plot on Figure: 'Replace curve' changes Fit Plot (should not) [0000113].

Fixed: Log scale is not displayed in Processing preview in Smooth dialog [0000114].

Fixed: Data Curve Properties dialog is not updated when data columns change [0000133].

Fixed: Path2D points limit optimization must not be used for export rendering [0000110].

Fixed: EPS/Postscript: Canvas size is not interpreted by all applications [0000111].

Fixed: MagicPlot does not take into account current screen (multi-monitors) [0000127].

Fixed: Processing of curve with index X column does not work [0000132].

Fixed: No error message is shown if the inserted image is absent in project file [0000140].

Other minor bug fixes.

The number in square brackets is the ticket ID from our internal issue tracker.

MagicPlot 2.5.1, Bug fixing release, June 25, 2013

Fixed: Some bugs in saving batch processing summary table evaluator

Improved: Peak guess dialog must not remember the number of previously guessed peaks

Other little fixes

MagicPlot 2.5, Major update, May 22, 2013

Introducing MagicPlot 2.5, 2.5.1

Added: New processing features: smoothing, convolution, deconvolution, correlation

Added: Processing of multiple curves/columns from table/figure in one processing dialog

Added: Full fit function formula in Report tab

Added: All processing dialogs show preview plot

Added: 'Create Fit Plot' menu item on Figure curves

Improved: Faster application launch

Improved: Selected cells in unfocused tables are shown with gray background

Improved: 'Delete emptied Figures' checkbox in confirm deletion dialog

Improved: Faster progress dialogs updating

Improved: Smart limitation for undo history to prevent unavoidable memory leak

Improved: New algorithm for peaks guessing

Improved: Automated unit tests for processing routines and nonlinear fitting (incl. NIST data sets)

Fixed: Curve colors alternation when adding curves, including batch processing

Fixed: Saving some deleted images to project file (mistakenly taken from undo history)

Fixed: Negative sizes in dimensions toolbar did not work

Fixed: Incorrect formula correction when multiple columns are deleted

Fixed: Avalanche deletion of evaluators which use deleted components

Fixed: Creating inset axes: copies unnecessary properties from current axes style

Fixed: Import multiple text files: Columns with numbers greater than the number of columns in first row were treated as text

Fixed: Project tree sometimes can stop reflecting the project structure

Fixed: Calibry Light font crash on Windows with Oracle Java 1.6_45 and 1.7_21 fontmanager.dll (Update: Bug fixed in Java 1.7_25)

MagicPlot 2.3, Minor update, June 7, 2012

Improved: EMF and vector image copy on Windows: coordinates tolerance increased

Improved: EPS, PDF: writing real font postscript names without fonts embedding

Improved: Show trailing zeros checkbox did not affect axes labels

Improved: Hand tool does not select and move objects when image is zoomed in

Improved: Batch Processing: Confusing legends on Figure when adding curves to existing Figure

Fixed: EPS: Landscape orientation activated mistakenly

Fixed: On Mac OS X: Helvetica plain font was mistakenly written in vector images as Helvetica-Light

Trial period is 30 days, no need to request trial key!

MagicPlot 2.2, Major update, May 21, 2012

Introducing MagicPlot 2.2, 2.3

Improvements in Vector Image Export

EPS, PDF: Font embedding fixed, including non-Latin characters

EPS, PDF: Writing correct Postscript font names for 14 standard fonts

PDF: Transparency support fixed

EPS: Transparency support added (with pdfmark tags)

SVG: New export format added

EMF: Objects misplacement fixed

Unnecessary items removed from file format options dialogs

Other Major Improvements

Added: Inserting raster images on Figures and Fit Plots

Added: Setting column formulas from inspector toolbar

Added: Automatic formulas correction when used columns positions are changed

Improved: Standard fonts are replaced with analogs if not present when opening project on other OS (Times, Helvetica, Courier)

Improved: Automatic installing for all users (no need to re-enter key for each user account)

Minor Improvements

Fixed: Image export on OpenJDK failed

Fixed: Importing multiple files when 'opening with' in Explorer/Finder: Only one Import dialog opens for all files

Fixed: Limit of length of names of project entries introduced

Fixed: Delta X field in 'Create Table from Curves' worked incorrectly

Fixed: Table did not get focus by click on header

Fixed: Fit Interval in batch processing was mistakenly updated if it was full interval in template Fit Plot

Fixed: Double slant of italic fonts on Mac OS X

Improved: Drawn objects can be moved to the back of the axes

Improved: Checking loaded project version and ask for program update

Added: '$' variable which means current column number, i.e. col($) = col($-1)

Added: Opening projects and file import by dragging files into MagicPlot window

Other fixes

MagicPlot 2.0.1, Minor update, Dec 1, 2011

Some bugs fixed

MagicPlot 2.0, Major update, Nov 8, 2011

Introducing MagicPlot 2.0

Added: Batch Processing and Fitting Series tool (Pro edition only)

Added: Text columns in tables

Improved: Multi-core optimization in curve fitting

Improved: Copying/pasting of column names with copying/pasting table data

Improved: 'Auto detect' alternative in comment lines prefix on import dialog

Improved: 'Maximum iterations number exceeding' shows message about fit error

Improved: New shortcut for creating Table (Ctrl+T)

Improved: OS X full-screen support (requires Mac OS X 10.7 with Java Update 1 installed)

Many minor improvements and bugs fixed

MagicPlot 1.5, Major update, May 24, 2011

Introducing MagicPlot 1.5

Added: Pro: Sorting tables

Added: Pro: Table Transposing

Added: Pro: Statistics toolbar

Added: Table columns statistics functions in column formula

Added: Pro: Histograms calculation

Added: Vertical bars drawing

Added: Pro: Quick Plot tool

Added: Fullscreen mode (F11)

Added: Opening multiple projects in one instance of app, importing with '-silent' key

Added: Remainder Operator % in parser (all formulas, calculator, etc.)

Added: Exporting multiple images and tables from project tree context menu, expand/collapse all menu item in Project context menu

Improved: 'Use alternative text output method for export/printing' checkbox in preferences

Improved: Fit Plot: Sum fit interval is updated when x data range is changed if interval was 'full' before changing

Improved: Plot data points under mouse cursor are denoted on mini-plots also (import dialog, histogram dialog, etc.)

Improved: Axes scale and titles can be applied from Figure template

Improved: Excel-like shortcuts Ctrl+Arrows for table navigation

Improved: Highlighting text labels and invisible components on mouse over

Fixed: Drawing of Fit Curves with breaks (when y = NaN or infinite)

Fixed: Exporting tables in text files: decimal separator from MagicPlot Preferences was used instead of system default decimal separator

Fixed: Create Tables from Curves: index x column was not exported

Fixed: Mac OS X: Selecting table columns with Cmd

Fixed: Incorrect rounding of values on axes with manual increment setting in some cases

Fixed: Incorrect line and parabola curves anchor points moving if some parameters are locked

Fixed: Creating a copy of a table with FFT evaluator which uses columns from not cloning table

Fixed: PDF export and copying without margins

Fixed: Illegal size of EMF images and copied vector images on Windows

Some little bugs fixed

MagicPlot 1.4.1, Minor update, Mar 04, 2011

Introducing MagicPlot 1.4

Added: Move Table(s) to another Folder

Fixed: Custom curve equation editing: error if new equation contains a syntax error and the number of found parameters is less than before this edit

Fixed: Error if plot contains only 1 point with big coordinates (~ >1e15), autoscale did not work in this case

Fixed: Inverse order of curves in Guess Peaks

Fixed: Ctrl+A shortcut did not select all axes on Figure

Fixed: 'Import Table here' on first Folder does not select this folder in Import dialog

Some little bugs fixed

MagicPlot 1.4, Major update, Feb 22, 2011

Added: Joint parameters can be proportional, not only equal

Added: Reading and renaming table column names when importing tables from text files

Added: Import tables from clipboard with import wizard

Added: Setting the scale of selected axes in inspector toolbar

Added: Creating a copy of Tables, Fit Plots and Figures

Added: Curve selection, editing cure style in inspector panel without dialog opening

Added: Cut, Copy and Paste curves between Fit Plots and Figures

Added: Tab/Shift+Tab and arrow keys select next/previous curve on plot or figure

Added: Changing Fit Curves order by dragging in curves table

Added: Adjusting parameters with mouse wheel (with Ctrl pressed)

Added: Help about inserting Greek letters and math symbols in shortcuts window

Added: 'Colorize Selected' item in color button menu when multiple curves are selected

Added: Parameters covariance matrix in Fit Report

Improved: Correct processing of missing values and repeated column delimiter in imported text file with table

Improved: Highlighting of suspicious curve (peak) if fit has not converged

Improved: Text redrawing on Figures and Fit Plots was optimized: much faster redrawing of big texts

Improved: New table is created in selected dataset in project tree if any

Improved: Adding Figure components in Figure properties dialog: project tree view improved, double click support

Improved: Using row number as X when adding table data to Figure, adding multiple data without closing dialog

Improved: Setting Y error column just in import wizard

Improved: Image zoom “smoothed”

Improved: Scale (linear/log10) type is now saved in Figure templates

Improved: Adding data to Figure from multiple Tables (in Figure properties dialog): Column selection dialog is showed once for all Tables

Improved: Continuous interval selection of legend labels (and curves) with Shift

Improved: Fit stops after tho consecutive iterations (not one) which changes Chi square smaller than the minimum deviation decrement

Improved: Coping and pasting tables: No more 'NaNs' in copied tables, empty rows are preserved when pasting

Improved: Message about ignoring weightings by incorrect Y error while fitting

Fixed: Table from Curves failed to add table to new folder, some tooltips were added

Fixed: Inverted scale: log scale labels, scrolling, splitting fit intervals

Fixed: Custom grid lines at 0 position

Fixed: Scale scrollbars bounds did not account for Fit Curves after opening of Fit Plot

Fixed: Multiple selected objects bringing to front and sending to back

Fixed: Ctrl+Ins, Shift+Ins, Shift+Del shortcuts did not work with drawn objects and in text label editing

Fixed: Marker types setting when adding multiple data to Figure

Fixed: Issue on deleting table with Fit Plot data which is used on Figure

Fixed: Incorrect numbers rounding when axes labels multiplier is not equal to 1

Fixed: Fitting with joined parameters when not all joint curves are summed

Fixed: Drawing error bars when showing fit residual

Fixed: Columns rearranging on Linux with Win (Meta) key pressed

Fixed: Critical issue with saving project files with " (quotes) in some Figure legends

Fixed: Legends format is some cases was not saved in project file

Fixed: Joining parameters of one curve

Fixed: Absence of error for formula a^-b in some cases. Now braces are always required: a^(-b)

Fixed: Measuring distance with scale zoom tool: current axes selection was ignored

Fixed: Undo of changing image size in some cases

Fixed: Filling under spline-connected data curves

Fixed: Critical issue: incorrect accounting for y errors from columns in fitting

Fixed: Deleting table with deleted columns with evaluators

Fixed: Undoing custom fit equation editing with illegal expression

Many other little improvements and fixes

MagicPlot 1.3.2, Bug fixing and minor update release, Dec 10, 2010

Added: Log10 scale

Added: 'Restore Auto Positioning' context menu item for manually positioned axes labels and legends

Added: Changing canvas size option: scale image or resize canvas only

Added: '% of Canvas Size' units in Dimensions toolbar

Improved: Positions of pasted drawings are more useful

Improved: Arrow keys move objects by 1 mm, and by 0.1 mm with Shift key pressed

Improved: Pasting drawing objects with preserving x and y coordinates of original objects (when canvas size is enough)

Improved: Drawed objects scaling when applying Figure template with changing Canvas size

Improved: Editable fields for line widths, etc.

Fixed: Error bars are not shown after project opening before updating error data

Fixed: Unclear error bars and drop lines rendering

Fixed: Mouse cursor coordinates are calculated incorrectly if canvas is zoomed

Fixed: Opening image export dialog error if 'Desktop' API is not supported by JVM (e.g. on Kububtu)

Fixed: Error on setting zero scale interval

Multiple little improvements

MagicPlot 1.3.1, Bug fixing and minor update release (strongly recommended), Nov 26, 2010

Added: Residual button on Fit Plot which shows fit residual while pressed

Added: Additional types of data markers and arrows

Added: Connecting data points with Bezier spline

Added: Distance measurement with zoom rectangle

Fixed: Error on saving projects with 'computed' NaN values ('invalid entry crc-32' error message)

Fixed: The old project file will not be rewritten if project saving fails on disk error or internal bug

Fixed: Smoothing in Guess Peaks dialog does not work

Fixed: Memory leakage on project closing in some cases

Fixed: Fuzzy rendering of arrows and markers on screen

Fixed: Index column values if used on plots and figures begin now from 1, not from 0

Fixed: Added clipping for line-connected curves (more efficient redrawing, vector files size was reduced)

Fixed: Applying Figure templates: axes titles text format was mistakenly applied

Fixed: Slow dragging of multiple objects

Multiple little improvements and fixes

MagicPlot 1.3, Major update, Oct 25, 2010

New Major features

Added:

Added:

Added:

Added:

Added:

Other new features and improvements

Added: Processing-Transform X/Y data menu items (set column formula) for Fit Plot

Added:

Added: Auto fit column by clicking on right table header separator

Added: 'Select all' by click in upper left table corner

Added: 'Remove' item in Curve context menu on Figure and Fit Plot, Delete and Backspace keys work for Fit Curves

Added: 'Delete Cell in Column' menu item

Improved: Column evaluators are indicated by blue column header and appropriate tool tip

Improved: Setting +/- factor in FFT

Improved: Style on Unix-like systems: no bold fonts

Improved: History dialog shows saved state with bold font

Improved: Selecting fit curves by mouse improved

Improved: Y-scale buttons preserve y=0 position if it is visible

Improved: Now you can enter expression in every numeric field

Improved: 'Show' checkbox is automatically set when 'sum' is selected

Improved: MagicPlot Calculator 1.1 integrated

Improved: MagicPlot can be minimized to task bar while Calculator window is still on top

Changed: Calculator tool is now available in Student edition also (not only in Pro)

Fixed: Saving files with dot in name issue (name was truncated after dot)

Fixed: Some table editing user interface issues

Fixed: Experience on Mac OS X: MagicPlot application menu, opening projects from Finder, 'modified' symbol on window close button

Fixed: Entering special chars on Mac using Option key now works

Fixed: Legend text alignment was not saved

Fixed: High-resolution icon in Windows version added

Fixed: Set column formula: issue with setting row numbers outside the actual table size

Many minor improvements and fixes

MagicPlot 1.2.2, Bug fixing release, Sept 22, 2010

Fixed: Table editing user interface issues, on Mac OS X especially

Fixed: 'if' operator in calculator

Fixed: Some other little bugs

MagicPlot 1.2.1, Minor update and bug fixing release, Sept 18, 2010

New Major features

Added: Calculator tool with syntax highlighting added

Added: with keyboard shortcuts

Added: Table column widths will never reset and are now saved in Project file

Added: Saving and loading preferences in current working directory for portable usage (ex. on USB drive)

Other new features and improvements

Added: Delete item in fit curve context menu on fit plot

Improved: Files sorting on import

Improved: Fit Plot naming

Changed: Linux GTK+ look-and-feel will not more be used because of many bugs in it (icons in table error, no separators in menu, error on opening windows with some GTK styles, etc.)

Changed: Improved inserting table columns and rows (now user can specifying number and before/after)

Changed: Folders state (extended/collapsed) is saved in Project file

Fixed: Fit Plot Data and Fit Sum show/hide state is stored in Project file

Fixed: Import text files with dot (.) in name: the end of the name after last dot will not be trancated if it is not standard extension

Fixed: 'Cannot create virtual machine' error on start in some circumstances (heap size problem)

Some little bugs were fixed and some improvements were made

MagicPlot 1.2, Major update, 18.06.2010

Added: Setting column formula

Added: Integration, differentiation, FFT

Added: Multiple axes on Figures

Added: Text label, line, arrow, rectangle, ellipse drawing

Many other features added

Many bugs fixed

MagicPlot 1.03, Major update, 26.06.2009

Major update of plots/figures rendering, changeable axes and curves style

MagicPlot 1.02, Bug fixing release, 10.12.2008

MagicPlot 1.01, Minor update, 08.12.2008

MagicPlot 1.0, First public release, 18.11.2008

Development started in March 2007.

Keyboard Shortcuts

MagicPlot keyboard shortcuts are almost the same in different operating systems (Windows, Mac OS, UNIX-like). The main difference is in modifier keys used: Ctrl on PC (Windows, UNIX-like) and Command on Mac. Some shortcuts were altered to avoid coincidences with system ones.

You can find these keyboard shortcuts in MagicPlot by selecting Help -> Keyboard Shortcuts menu item.

Mac Keyboard Symbols

⌘ Command (Meta) key

⇧ Shift key

⌥ Option (Alt) key

⌃ Control key

Common Shortcuts

Windows and UNIX-like Key	Mac OS Key	Action
Ctrl+O	⌘ O	Open project
Ctrl+S	⌘ S	Save project
Ctrl+Shift+S	⌘ ⇧ S	Save project as
Ctrl+N	⌘ N	New project
Ctrl+Shift+N	⌘ ⇧ N	New table
Ctrl+I	⌘ I	Import table from text file
Ctrl+Shift+I	⌘ ⇧ I	Import table from clipboard
Ctrl+P	⌘ P	Print (image or table)
Ctrl+Shift+P	⌘ ⇧ P	Preview image
Ctrl+E	⌘ E	Export image or table
Ctrl+K	⌘ K	Open calculator
Ctrl+U	⌘ U	MagicPlot preferences
Ctrl+Q	⌘ Q	Quit
Undo/Redo
Ctrl+Z	⌘ Z	Undo
Ctrl+Shift+Z or Ctrl+Y	⌘ ⇧ Z or ⌘ Y	Redo
Ctrl+Shift+H	⌘ ⇧ H	Show command history window
Clipboard
Ctrl+X	⌘ X	Cut
Ctrl+C	⌘ C	Copy
Ctrl+V	⌘ V	Paste
Ctrl+A	⌘ A	Select all

Table Shortcuts

Windows and UNIX-like Key	Mac OS Key	Action
F2 or Double click	Double click	Edit cell
Ctrl+F2	⌘ F2	Set or edit column formula
F4	F4	Rename column (edit header)
Ctrl+Enter	⌘ Return	Recalculate column
Alt+Drag header (Win/Meta+Drag header on UNIX)	⌥ Drag header	Rearrange table columns

Figure and Fit Plot Shortcuts

Windows and UNIX-like Key	Mac OS Key	Action
Alt+Enter	⌥ Return	Open Figure or Fit Plot properties window
Arrows keys	Arrows keys	Move selected object(s) by 1 mm
Shift+Arrows keys	⇧ Arrows keys	Move selected object(s) by 0.1 mm
Escape	Escape	Clear selection
Delete or Backspace	Delete or Backspace	Delete selected objects
F2 or Double click	F2 or Double click	Edit selected text label
Moving and Resizing Drawings
Ctrl+Drag object	⌘ Drag object	Disable rulers and snapping to other objects
Shift+Drag corners	⇧ Drag corners	For rectangle and ellipse: preserve aspect ratio For line and arrow: disable snapping to 0°, 45°, 90°...
Alt+Drag corners	⌥ Drag corners	For rectangle and ellipse: stretch relative to center
Text Labels Editing 2) These shortcuts are activated in text label edit mode.
Ctrl+Enter or Shift+Enter	⌘ Return or ⇧ Return	Apply changes
Escape	Escape	Apply changes
Enter	Return	New line
Ctrl+G, then letter	⌘ G, then letter	Type Greek letter ()
Ctrl+M, then symbol	⌘ M, then symbol	Type special math symbol ()
Ctrl+B	⌘ B	Bold
Ctrl+I	⌘ I	Italic
Ctrl+O	⌘ O	Oblique
Ctrl+U	⌘ U	Underlined
Ctrl+L	⌘ L	Align left
Ctrl+E	⌘ E	Center
Ctrl+R	⌘ R	Align right
Ctrl+J	⌘ J	Justify
Ctrl+–	⌘ –	Subscript
Ctrl++	⌘ +	Superscript
Scale Range Scrolling and Zoom
Scrolling 3) Scrolling here means mouse wheel rotation or touchpad vertical scrolling.	Scrolling	Vertical (Y) scale scrolling
Shift+Scrolling	⇧ Scrolling or Horizontal scrolling	Horizontal (X) scale scrolling
Ctrl+Scrolling	⌘ Scrolling	Vertical (Y) scale zooming
Ctrl+Shift+Scrolling	⌘ ⇧ Scrolling or ⌘ Horizontal scrolling	Horizontal (X) scale zooming
Left mouse button+Scrolling	⌃ Scrolling	Proportional (X and Y) scale zooming
Image Zoom
Ctrl++	⌘ +	Zoom in
Ctrl+-- or Alt+Click	⌘ -- or ⌥ Click	Zoom out
Ctrl+* or Ctrl+0	⌘ * or ⌘ 0	Full view