All Projects β†’ vojtamolda β†’ Plotly.swift

vojtamolda / Plotly.swift

Licence: MIT License
Interactive data visualization library for Swift

Programming Languages

swift
15916 projects
python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to Plotly.swift

Plotly.js
Open-source JavaScript charting library behind Plotly and Dash
Stars: ✭ 14,268 (+20282.86%)
Mutual labels:  charts, charting-library, plotly
Matplotplusplus
Matplot++: A C++ Graphics Library for Data Visualization πŸ“ŠπŸ—Ύ
Stars: ✭ 2,433 (+3375.71%)
Mutual labels:  charts, charting-library
Anychart Android
AnyChart Android Chart is an amazing data visualization library for easily creating interactive charts in Android apps. It runs on API 19+ (Android 4.4) and features dozens of built-in chart types.
Stars: ✭ 1,762 (+2417.14%)
Mutual labels:  charts, charting-library
Graphic
A Flutter data visualization library based on Grammar of Graphics.
Stars: ✭ 173 (+147.14%)
Mutual labels:  charts, charting-library
Echarts
Apache ECharts is a powerful, interactive charting and data visualization library for browser
Stars: ✭ 49,119 (+70070%)
Mutual labels:  charts, charting-library
Svelte Frappe Charts
πŸ“ˆ Svelte bindings for frappe-charts.
Stars: ✭ 111 (+58.57%)
Mutual labels:  charts, charting-library
React D3 Components
D3 Components for React
Stars: ✭ 1,599 (+2184.29%)
Mutual labels:  charts, charting-library
svg-time-series
SVG time-series charting library
Stars: ✭ 18 (-74.29%)
Mutual labels:  charts, charting-library
dashblocks-template
Dashblocks Vue Material Admin Template
Stars: ✭ 143 (+104.29%)
Mutual labels:  charts, plotly
Keen Dataviz.js
Data Visualization Charting Library
Stars: ✭ 215 (+207.14%)
Mutual labels:  charts, charting-library
Devextreme
HTML5 JavaScript Component Suite for Responsive Web Development
Stars: ✭ 1,385 (+1878.57%)
Mutual labels:  charts, charting-library
dash-lollapalooza-brasil-2018
🎟Using Plotly to visualize data from Lollapalooza
Stars: ✭ 23 (-67.14%)
Mutual labels:  charts, plotly
Dashblocks
Enable Analytics in your Apps
Stars: ✭ 48 (-31.43%)
Mutual labels:  charts, plotly
HCLineChartView
HCLineChartView is a beautiful iOS library for drawing line charts. It is highly customizable and easy to use.
Stars: ✭ 22 (-68.57%)
Mutual labels:  charts, charting-library
Teechart Vcl Samples
Sample programs showing how to use TeeChart VCL for Delphi and C++ Builder
Stars: ✭ 24 (-65.71%)
Mutual labels:  charts, charting-library
Amcharts4
The most advanced amCharts charting library for JavaScript and TypeScript apps.
Stars: ✭ 907 (+1195.71%)
Mutual labels:  charts, charting-library
Lavacharts
Lavacharts is a graphing / charting library for PHP 5.4+ that wraps Google's Javascript Chart API.
Stars: ✭ 587 (+738.57%)
Mutual labels:  charts, charting-library
Chartkick.py
Create beautiful Javascript charts with minimal code
Stars: ✭ 695 (+892.86%)
Mutual labels:  charts, charting-library
Angular Chartist.js
Angular directive for Chartist.js
Stars: ✭ 206 (+194.29%)
Mutual labels:  charts, charting-library
gauge-chart
Gauge Chart Library
Stars: ✭ 45 (-35.71%)
Mutual labels:  charts, charting-library

Plotly.swift

Build Badge Release Badge Contributions Badge License Badge Lifecycle Badge Swift Badge

Interactive chart library for Swift built on top of Plotly.

Plotly.swift brings professional graphs to the nascent Swift numerical computing ecosystem. Charts can be viewed in Jupyter notebooks or as standalone HTML files. Codebase has no external dependencies and can be easily used to visualize data in the middle of a complicated debugging session.

Example

The following code creates a combined line and bar plot and displays the figure.

Example

 
import Plotly
 
 
let x = 1...4
let y = [10, 15, 13, 17]
 
let scatter = Scatter(name: "Scatter", x: x, y: y)
let bar = Bar(name: "Bar", x: x, y: y)
 
let figure = Figure(data: [scatter, bar])
try figure.show()  // figure.display() in Jupyter notebook
 
 

You can find examples of more than 30 built-in chart types in the Examples/ directory or in the Showcase.ipynb notebook. The fastest way to get started with your own chart is a Google Colab notebook with a Swift kernel. Colab Badge

Installation

Project uses Swift Package Manager for distribution, building, running and testing. PRs implementing support for other packaging or distribution methods are welcome.

Jupyter Notebook

To create a figure and display it in your notebook running a Jupyter Swift kernel, copy and paste the following starter code to the first cell. Then use Figure.display() method to interactively embed any graph into the notebook.

%install '.package(url: "https://github.com/vojtamolda/Plotly.swift.git", .exact("0.5.0"))' Plotly
%include "EnableIPythonDisplay.swift"

Project Dependency

To bundle the library and create charts in your own project, add the following dependency to your Package.swift manifest. Calling Figure.show() then displays the figure in a browser window.

dependencies: [
    .package(url: "https://github.com/vojtamolda/Plotly.swift.git", .exact("0.5.0")),
]

Documentation

Full reference user documentation can be found here. Text is adapted from JavaScript and therefore may require some imaginative translation in order to be applicable. In particular, all originally mashedtogether identifiers are camelCased to match conventions and user expectations in Swift.

Public interface of the library follows the Swift API Design Guidelines. Primary design goal is to provide a beautiful API that can show an interactive chart of your data as quickly as possible without compromising more advanced use cases.

If you're interested in the inner workings of the library Code Generation and Internals readme files contain detailed description of how the sausage is really made.

Release

Library is in early beta stage and the releases before version 1.0.0 doesn't follow Semantic Versioning. Symbol and method names may and generally will change. Before the 1.0.0 release, the recommendation is to depend on .exact("0.x.y") version to make sure your code doesn't break due to backward incompatible changes in the API.

Licensed under the MIT license. See the text for more details.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].