Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/xilinjia/csv-analyser
Visualize and analyze data in csv files. A multiplatform project runnable on Linux, Android, Windows, MacOS
https://github.com/xilinjia/csv-analyser
android compose csv data-science data-visualization kotlin kotlin-multiplatform linux macos multiplatform windows
Last synced: 1 day ago
JSON representation
Visualize and analyze data in csv files. A multiplatform project runnable on Linux, Android, Windows, MacOS
- Host: GitHub
- URL: https://github.com/xilinjia/csv-analyser
- Owner: XilinJia
- License: mit
- Created: 2022-04-29T11:03:56.000Z (almost 3 years ago)
- Default Branch: main
- Last Pushed: 2022-04-29T14:35:14.000Z (almost 3 years ago)
- Last Synced: 2024-12-16T22:49:07.771Z (about 2 months ago)
- Topics: android, compose, csv, data-science, data-visualization, kotlin, kotlin-multiplatform, linux, macos, multiplatform, windows
- Language: Kotlin
- Homepage:
- Size: 189 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
![CSVAnalyser-logotype](./Images/icon.png)
# What it is
CSV Analyser is a visualiser and analyser of data in CSV files. It's built using Kotlin Multiplatform and runs on Android, Linux, Windows and MacOS. It's also a demo project on how to start using Kotlin in data science projects.
# How to use it
At the start, tap on "File" button to import a csv file.
After a valid file is imported, a pulldown menu button "Column" appears on the upper-right corner. Tap on it to select a column, and plot of the column is shown as scattered dots.
The app includes two plot areas: and upper and a lower, tied on the X-axis. By defaults, lower plot is off. To show it, tap on button "Toggle2".
The lower plot will show differences of two columns. After selecting column 1 and column 2, tap on button "c1-c2[j]" on the right side, then the differences of the two columns are shown. The "j" is a lag index, by default is 0, you can change it by typing in a different number. The difference with the lag is computed as c1[i] - c2[i-j].
The upper and lower plots can be toggled on and off separately.
The plots can be zoomed in and out with "+" and "-" buttons. The charts can be dragged with a finger or mouse. Dragging along Y-axis is independent for the two plots. Along X-axis, it's tied.
Tap on the "?" button, a text info area will appear below the lower plot. The area prints out related info of any point selected.
Tap on the "Panel" button will hide/show the left panel.
A test data file "test.csv" is included.
# How to get it
The project includes an APK file for Android and a Deb file for Ubuntu flavours of Linux.
For other systems, it can be built in the following ways.
Federa etc: ./gradlew packageRpm
Windows: ./gradlew packageMsi
Mac: ./gradlew packageDmg
# License
CSVAnalyser is provided under MIT License: https://opensource.org/licenses/MIT
# Used Libraries and their licenses
[KFilePicker](https://github.com/Tlaster/KFilePicker)
[dataframe](https://github.com/Kotlin/dataframe)
[androidx.compose](https://developer.android.com/jetpack/compose)
[Kotlin Multiplatform](https://kotlinlang.org/docs/multiplatform.html)