MagicPlot Manual

Plotting and nonlinear fitting software

User Tools

Site Tools


manual

This is an old revision of the document!


MagicPlot User Guide

Compiled from online help on <date>
© MagicPlot.com

Overview

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 importing 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 Expression Syntax for details.) For example, you can enter 12/pi in circle width and height fields in Dimensions toolbar 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 Not-a-Number 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 Expression Syntax.

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:

  1. Operations with a NaN as at least one operand, e.g. 1+NaN
  2. Indeterminate forms
    • Divisions 0/0, ∞/∞, ∞/-∞, -∞/∞, -∞/-∞
    • Multiplications 0*∞, 0*(-∞)
    • Power 1^∞
    • Additions ∞+(-∞), (-∞)+∞ and equivalent subtractions.
  3. 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 Tables.

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 Column Formula 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:

  1. Create a Fit Plot, specify Y errors in Data tab of Curve Properties dialog for the data curve, if any
  2. Specify fit function by adding Fit Curves
  3. Specify initial values of fit parameters (drag curves or enter accurate values)
  4. Specify used X data interval
  5. 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 Custom Equation 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 Guessing Peaks 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 Joining the Parameters of Fit Curves 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 Fitting Algorithm and Computational Formulas 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 Integration 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 Expression Syntax 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 custom fit equation. Unlike custom fit equations these curves can be adjusted with mouse on Fit Plot.

Name Formula Parameters Meaning Additional Properties
Line y = a x + b a — linear
b — constant
Parabola y = a x^2 + b x + c a — quadratic
b — linear
c — constant
Vertex:
x_0 = − b / {2 a}
y_0 = c − {b^2} / {4 a}
Spline Natural cubic spline,
on each i-th piece:
y_i = a_i + b_i x + c_i x^2 + d_i  x^3
xN — anchor point x-coordinates
yN — anchor point y-coordinates
Gaussian y = a exp(− ln(2) ({x−x_0}/dx)^2) a — amplitude
dx — half width at half
maximum (HWHM)
x0 — maximum position
Area (integral):
S = sqrt{pi / {ln {2}}} ~ a dx
Standard deviation:
sigma = dx / sqrt{2 ln 2}
Gaussian-A
(area-normalized)
y = sqrt{{ln {2}} / pi} ~ a / dx exp(− ln(2) ({x−x_0}/dx)^2) a — area (integral)
dx — half width at half
maximum (HWHM)
x0 — maximum position
Amplitude:
A = sqrt{{ln 2} / pi} ~ a/dx
Standard deviation:
sigma = dx / sqrt{2 ln 2}
Lorentzian y = a 1 / {1 + ({x−x_0} / dx)^2} a — amplitude
dx — half width at half
maximum (HWHM)
x0 — maximum position
Area (integral):
S = pi a dx
Lorentzian-A
(area-normalized)
y = a / {pi dx} 1 / {1 + ({x−x_0} / dx)^2} a — area (integral)
dx — half width at half
maximum (HWHM)
x0 — maximum position
Amplitude:
A = a / {pi dx}
Gauss Derivative y = − 2 ln(2) ~ {a (x−x_0)} / {dx^2} exp(− ln(2) ({x−x_0}/dx)^2) 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):
S = sqrt{pi / {ln {2}}} ~ a dx
Standard deviation:
sigma = dx / sqrt{2 ln 2}
Peak-to-peak horizontal:
p_x = sqrt{2/{ln {2}}} ~ dx
Peak-to-peak vertical:
p_y = 2 sqrt{{2 ln {2}} / e} ~ a / dx
Lorentz Derivative y=−2 a {x−x_0}/{dx^2} {(1 + ({x−x_0} / dx)^2)^{−2}} 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):
S = pi a dx
Peak-to-peak horizontal:
p_x = 2/{sqrt {3}} ~ dx
Peak-to-peak vertical:
p_y = {3 sqrt {3}} / 4 ~ a / dx

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 Expression Syntax 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 Not-a-Number (NaN) 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:

  1. Create Fit Plot with your initial table data
  2. Add a Fit Curve which simulates the baseline. You may specify a custom equation
  3. Specify Fit Interval so that it contains only noise points
  4. Fit the data by clicking Fit Sum button
  5. Subtract the baseline fitting curve from data by checking Baseline checkbox in curves list
  6. 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:

I_n = 1/2 sum{i=2}{n}{(x_i} − x_{i − 1}) ({y_i + y_{i − 1})},~ n=2...N;~~ I_1=0

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:

{y prime}_i = 1/2 ({y_{i+1} − y_i}/{x_{i+1} − x_i} + {y_i − y_{i − 1}}/{x_i − x_{i − 1}}),~ i=2...N − 1

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

{y prime}_1 = {y_2 − y_1}/{x_2 − x_1} ,~~ {y prime}_N = {y_N − y_{N − 1}}/{x_N − x_{N − 1}}

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)
C_n = 1/N sum{k=1}{N}{c_k e^{−2 pi i k n {/} N}} c_n = sum{k=1}{N}{C_k e^{2 pi i k n {/} N}}
Unchecked C_n = sum{k=1}{N}{c_k e^{−2 pi i k n {/} N}} c_n = 1/N sum{k=1}{N}{C_k e^{2 pi i k n {/} N}}


Factor +1 (Scientific)
1/N in forward
transform
Forward Transform
(Signal→Spectrum)
Inverse Transform
(Spectrum→Signal)
Checked
(Default)
C_n = 1/N sum{k=1}{N}{c_k e^{2 pi i k n {/} N}} c_n = sum{k=1}{N}{C_k e^{−2 pi i k n {/} N}}
Unchecked C_n = sum{k=1}{N}{c_k e^{2 pi i k n {/} N}} c_n = 1/N sum{k=1}{N}{C_k e^{−2 pi i k n {/} N}}

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

A_n = sqrt{{Re_n}^2 + {Im_n}^2},~~ phi_n = atan2(Im_n,~ Re_n)

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 f_n={n−1}/{N Delta t} 0,~ 1/{N Delta t},~ 2/{N Delta t},~ ... ~{N−1}/{N Delta t}
Checked f_n={n−1−{N{/}2}}/{N Delta t} {−{N{/}2}/{N Delta t}},~ ...~ 0,~ ... ~{N{/}2−1}/{N Delta t}

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 Expression Syntax.

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) s = sum{j}{}{y_j}
X Mean (first moment) nu_1 = 1/s sum{j}{}{y_j x_j}
2, 3, 4th Central moments mu_k = 1/s sum{j}{}{y_j (x_j − nu_1)^k}, ~ k = 2...4

MagicPlot uses the following formulas to calculate intervals statistics:

Property Formula
Integral Calculated using
Trapezoidal rule
X Mean (expected value) mu = nu_1
Variance sigma^2 = {n / {n − 1}} mu_2
Standard deviation sigma = sqrt{sigma^2}
Skewness gamma_1 = sqrt{n (n − 1)} / {n − 2} {mu_3} / {sigma^3}
Kurtosis gamma_2 = {n − 1} / {(n − 2)(n − 3)} ({(n + 1) {mu_4} / {sigma^4} − 3 (n − 1)})

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
  • Image zoom 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

  1. Click on the Axes box border to select it. The green markers identifying your selection appear.
  2. Drag Axes box border to move the Axes box on Canvas.
  3. Draw border marker to resize Axes Box.

The Using of Dimensions Toolbar 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

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

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

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

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

  • Scale scrolling 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 Image Preview 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 copy image 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)
PNG JPEG

Vector Image Formats

The following vector graphics formats are supported:

  • 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 Expression Syntax 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

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: Manual topic on Color Map Plots.
  • 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

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
  • 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
Other new features and improvements
  • Added: Processing-Transform X/Y data menu items (set column formula) for Fit Plot
  • 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: Inserting Greek letters and math symbols 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)
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 (letters correspondence)
Ctrl+M, then symbol ⌘ M, then symbol Type special math symbol (symbol list)
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 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
1)
If you use Opera browser with Opera Turbo option the images will appear recompressed in JPEG format and this comparison is void.
2)
These shortcuts are activated in text label edit mode.
3)
Scrolling here means mouse wheel rotation or touchpad vertical scrolling.
This website uses cookies. By using the website, you agree with storing cookies on your computer. Also you acknowledge that you have read and understand our Privacy Policy. If you do not agree leave the website.More information about cookies
manual.1289165874.txt.gz · Last modified: Sun Nov 8 12:20:32 2015 (external edit)