| developer = [[KDE]]
| released = {{Start date and age|2001}} (version 0.1, under the name QPlot)<br />{{Start date and age|2003}} (version 1.0, renamed to LabPlot)
| latest release version = 2.1112.1
| latest release date = {{Start date and age|20242025|0708|1618|df=yes}}<ref>{{cite web | url=https://labplot.kde.org/20242025/0708/1618/labplot-2-1112-1-released/ | title=LabPlot 2.1112.1 released – LabPlot| date=1618 JulyAugust 20242025}}</ref>
| programming language = [[C (programming language)|C]], [[C++]]
| operating system = [[Microsoft Windows|Windows]]<br/>[[OS X]]<br/>[[Linux]]<br/>[[FreeBSD]]<br/>[[Haiku_(operating_system)|Haiku]]
| genre = [[List of information graphics software|Scientific plotting]]<br/>[[Data analysis]]<br/>[[Curve fitting]]<br/>[[Regression analysis]]<br/>[[Statistics|Statistical analysis]]<br/>[[Data processing]]<br/>[[Digitization|Plot digitization]]<br/>[[Notebook interface]]<br/>[[Real-time data]]
| license = [[GNU_GPLv2|GPL-2.0-or-later]]
'''LabPlot''' is a [[free and open-source software|free and open-source]], [[cross-platform]] computer program for interactive [[Plot (graphics)|scientific plotting]], [[curve fitting]], [[nonlinear regression]], [[data processing]] and [[data analysis]]. LabPlot is available, under the [[GNU_GPLv2|GPL-2.0-or-later]] license, for [[Microsoft Windows|Windows]], [[macOS]], [[Linux]], [[FreeBSD]] and [[Haiku_(operating_system)|Haiku]] operating systems.
It has a [[graphical user interface]], a [[command-line interface]], and an interactive and animated [[notebook interface]]. It is similar to [[Origin (data analysis software)|Origin]] and able to import Origin's data files.<ref>{{Citation |last1=Косуліна |first1=Н.Г. |title=Програмне Забезпечення Обов'язкових Та Вибіркових Освітніх Компонентів Освітньої Програми «біомедична Інженерія» |work=Sciences of Europe |issue=131 |page=77 |publication-date=December 2023 |trans-title=Software of mandatory and optional educational components Educational program “Biomedical Engineering” |url=https://www.europe-science.com/wp-content/uploads/2023/12/Sciences-of-Europe-No-131-2023.pdf |place=[[Prague]], Czech Republic |last2=Сухін |first2=В.В. |last3=Чорна |first3=М.О. |last4=Ляшенко |first4=Г.А. |last5=Коршунов |first5=К.С. |lang=uk}}</ref> Features include the [[Hilbert transform]] function, statistics, [[Image color transfer|color maps]], conditional formatting, and multi-axes.<ref>{{Citation |last=Carmona |first=Marco |title=7 Free and Open Source Plotting Tools [For Maths and Stats] |date=2021-11-08 |work=It’s FOSS |url=https://itsfoss.com/open-source-plotting-apps/ |access-date=2024-08-22 |language=en}}</ref>
It has a [[graphical user interface]], a [[command-line interface]] and an interactive and animated [[notebook interface]] to mathematical and statistical packages and programming languages.
== '''Features'''<ref>{{Cite web|title=LabPlot features|date=28 July 2024|url=https://labplot.kde.org/features/|publisher=LabPlot Team}}</ref> ==
== General features ==
LabPlot is a project-based data management, visualization and analysis tool with a tree-like structure for organizing objects. It features data containers like Spreadsheets and Matrices, and a Worksheet for flexible visualization. The program offers Notes for annotations, [[undo]] history, [[Autosave | autosave]], and locale-sensitive features. It supports [[command-line interface | command-line]] parameters, multiple color schemes, and customizable layouts through a window docking system.
== Data visualization ==
LabPlot is a data visualization and analysis tool designed for large datasets. It offers a wide range of 2D plotting options, including [[scatter plot | scatter plots]], [[line chart | line plots]], [[bar chart | bar plots]], [[histogram | histograms]], [[box plot | box plots]], [[rug plot | rug plots]], [[Kernel density estimation | KDE plots]], [[Q-Q plot | Q-Q plots]], [[Pareto chart | Pareto plots]], [[sparkline | sparklines]] and Lollipop plots. The software supports multiple axes, flexible positioning of elements, and smooth navigation. It provides various color map options, user-defined themes, and advanced features like [[LaTeX]] support.
== Data analysis and statistics ==
The program features a column [[statistics]] spreadsheet that details statistical properties and excels in [[regression analysis]] with both linear and non-linear [[curve fitting]] using the [[Levenberg–Marquardt algorithm]], supporting numerous predefined and user-defined models. It includes [[Maximum likelihood estimation]] for fitting various [[probability distribution | statistical distributions]] and offers advanced data processing like [[noise reduction | baseline subtraction]], data reduction (line simplification) with e.g. the [[Ramer–Douglas–Peucker algorithm]], [[numerical differentiation]] and [[numerical integration | integration]], and [[smoothing | data smoothing]]. Sophisticated [[signal processing]] functions such as [[Fourier transform | Fourier transforms and filtering]], [[Hilbert transform | Hilbert transforms]], [[convolution]], and [[correlation | correlation analyses]] are supported. Quick statistical previews and visualizations are available for quantitative and categorical data. Enhanced functionality includes a mathematical expression parser and a function values dialog with syntax highlighting for complex data generation and manipulation.
== Notebook interface ==
Labplot features an interactive and animated [[notebook interface | computational notebook]] that integrates with mathematics and statistics packages and programming languages like [[Python (programming language) | Python]], [[R (programming language) | R]], [[Julia (programming language) | Julia]], [[Maxima (software) | Maxima]], [[GNU Octave]], [[Scilab]], [[SageMath]], [[KAlgebra]], [[Qalculate!]], [[Lua (programming language) | Lua]]. It supports multiple notebooks and languages simultaneously. Users can create interactive plots from notebook variables and display statistics and plots directly from the context menu. The program offers [[Markdown]] and [[LaTeX]] support. It can read [[Project_Jupyter#Jupyter_Notebook | Jupyter]] and [[Cantor (software) | Cantor projects,]] provides syntax highlighting, integrated help, and supports exporting notebooks to [[PDF]].
== Data import and export ==
LabPlot offers a set of features for data handling and analysis. It has no practical limits on data size other than the physical constraints of a computer. LabPlot supports importing various file formats like [[Comma-separated values | CSV]], [[Microsoft Excel]], [[OpenDocument | ODF]], [[SAS (software) | SAS]], [[SPSS]], [[MATLAB]], [[SQL]], [[JSON]], [[binary file | binary files]], [[hierarchical data format | HDF5]], [[MQTT]], [[FITS]], [[NetCDF]], [[ROOT | ROOT (CERN)]], [[LTspice]], [[Ngspice]]. [[Real-time data]] can be read through Unix/[[User datagram protocol | UDP]]/[[Transmission Control Protocol | TCP]] sockets and [[serial port | serial ports]]. Users can export data to formats such as [[PDF]], [[PNG]], [[JPG]], [[SVG]], and [[BMP file format | BMP]], or directly to the clipboard, and print notes, worksheets, and plots. Data can be exported to [[Comma-separated values | CSV]], [[Microsoft Excel]], [[SQL]] databases, and [[LaTeX]] tables. The [[drag and drop]] functionality and templates for import filters simplify the process. Sharing the project via [[email]], [[Nextcloud]], etc. directly from the main menu is also supported. Additionally, the program includes nearly 2000 real-world data sets.
== Plot digitization ==
LabPlot can extract and analyze data from image files across various coordinate systems. It supports [[error bar]] analysis and offers both manual and automated [[data extraction]] methods. The software can process multiple curves from a single image, includes basic image editing tools, and integrates extracted data into spreadsheets for immediate use.
== Data generation and processing ==
LabPot offers a suite of features for data management and analysis in spreadsheets. It adheres to Tidy Data principles, supports various data types, and provides sorting and search capabilities. The software includes tools for [[Data transformation (statistics) | data transformation]], [[normalization (statistics) | normalization]], and [[feature scaling | standardization]], as well as [[random number generation]] and [[sampling (statistics) | sampling methods]]. It offers functionality to restructure pivoted data, selectively drop or mask data, and create [[heat map]] visualizations with [[color blindness | color-vision deficiency]] friendly options.
== Documentation ==
LabPlot features a user guide, tutorials, and instructional videos to facilitate learning. Users can access project examples and educational data sets. The software includes a gallery of plots with downloadable project files. It is available in multiple languages.
== History ==
In 2008, developers of LabPlot and [[SciDAVis]] (another Origin clone, forked from [[QtiPlot]]) "found their project goals to be very similar" and decided to merge their code into a common backend while maintaining two frontends: LabPlot, integrated with the [[KDE]] desktop environment (DE); and SciDAVis, written in DE-independent [[Qt (software)|Qt]] with fewer dependencies for easier cross-platform use.<ref>{{citation|url=http://dot.kde.org/2009/10/16/labplot-and-scidavis-collaborate-future-free-scientific-plotting|title = LabPlot and SciDAVis Collaborate on the Future of Free Scientific Plotting|date = 16 October 2009}}</ref>
LabPlot was initiated by Stefan Gerlach, a scientist and IT administrator at the [[University of Konstanz]].<ref>{{Cite web|title=Homepage of Dr. Stefan Gerlach|date=30 June 2016|url=http://theorie.physik.uni-konstanz.de/gerlach/|publisher=Theoretische Physik Uni Konstanz}}</ref>
Starting April 2024, LabPlot received funding from [[NLnet]]'s NGI0 Core grant to add scripting capabilities (via Python and a [[public interface]]), more data analysis functions, and [[statistical analysis]] features.<ref>{{Citation |title=LabPlot |work=Projects |url=https://nlnet.nl/project/LabPlot/ |access-date=2024-08-22 |publisher=[[NLnet]] Foundation}}</ref>
== Community ==
The LabPlot team promotes a collaborative community through various communication channels.<ref>{{Cite web|title=LabPlot Support|date=28 July 2024|url=https://labplot.kde.org/support/|publisher=LabPlot Team}}</ref> The developers support the idea of [[mentorship]] of students and actively participate in such programs as the Season of KDE (SoK)<ref>{{Cite web|title=The Season of KDE (SoK)|date=28 July 2024|url=https://mentorship.kde.org/blog/2024-01-15-sok-24-welcome/|publisher=KDE}}</ref> or [[Google Summer of Code]] <ref>{{Cite web|title=Google Summer of Code Program 2024|date=28 July 2024|url=https://summerofcode.withgoogle.com/programs/2024/organizations/kde-community|publisher=Google}}</ref>.
== User privacy ==
LabPlot is designed to be compliant with [[KDE]] Telemetry Policy, which forbids the usage of unique identification.<ref>{{Cite web|title=KDE Telemetry Policy|date=28 July 2024|url=https://community.kde.org/Policies/Telemetry_Policy|publisher=KDE}}</ref>
* [https://labplot.kde.org LabPlot Homepage] ▼
==See also==
{{Portal|Free and open-source software|Mathematics}}
* [[List of statistical software]]
* [[List of information graphics software]]
==References==
{{Reflist}}
▲* [{{Official website|https://labplot.kde.org LabPlot Homepage]/}}
* [https://nlnet.nl/project/LabPlot/ NLnet Foundation grant]
{{KDE}}
[[Category:Free plotting software]]
[[Category:Free software programmed in C]]
[[Category:Free software programmed in C++]]
[[Category:KDE software]]
[[Category:Plotting software]]
|