Introducing the Markdown Table to Chart Plugin, a powerful tool designed to seamlessly convert markdown tables into interactive charts with ease. Whether you’re a developer, data analyst, or content creator, this plugin bridges the gap between raw data and visual representation, enhancing your workflow and making your data more accessible and engaging.
Why This Plugin? Markdown is a popular format for writing and documenting, especially in technical environments. However, conveying data through tables alone can sometimes be limiting, especially when trying to highlight trends or insights at a glance. This plugin addresses that limitation by transforming markdown tables into visually appealing charts, all within your existing workflow. No need for external tools or complex configurations—everything happens directly where you work, in and around Amplenote.
How It Works? The plugin automates the process of identifying markdown tables within your Amplenote Note, allowing you to select the table you want to visualize. With a few simple clicks, you can choose which columns to represent on the X, Y, or even Z axes, giving you full control over the chart’s structure. Once configured, the plugin uses Chart.js, a powerful and flexible JavaScript library, to generate the chart instantly. The chart is then embedded directly into your document, maintaining a cohesive and streamlined experience (Viewer - Some work is in progress!).
User-Friendly Design! The interface is designed to be intuitive, minimizing the learning curve so you can get started quickly. Dropdown menus populate with your table data, making it easy to select and customize your charts. Whether you need a line chart, bar chart, or scatter plot, the plugin supports a variety of chart types, ensuring that your data is displayed in the most effective format.
Enhanced Workflow Integration! The Markdown Table to Chart Plugin is designed to integrate smoothly into your existing setup. This plugin enhances your ability to present data without breaking your flow.
In summary, this plugin is an essential tool for anyone looking to elevate their markdown documentation by converting tables into insightful, interactive charts effortlessly.
Demo with Valid Data - Gold Prize Trend in India.
After installing, Open your Note Options (Three dots on top right of the Note.) You will see Three Options.
Graph Utility: Download!
Download - Interactive Charts (Recommended)
Download a HTML file with all the Interactive Chart Options, with all the table data from the note that you are selecting from.
Download all Tables - MD
This option will let you download a formatted markdown type of all the tables present in the note that you selected from, this can be used in the above HTML, by editing using a notepad or any other software that support markdown tables.
Download all Tables - CSV
This option will let you download a formatted comma separated file type of all the tables present in the note that you selected from, this can be used to open in excel and continue analytics.
Copy all Tables from this Note to a new Note
If you have to many data points or to much noise data, which is not letting you focus on your data, then move all your data in tables alone into a clean and separate note.
Graph Utility: Viewer!
Do not want to download the data or create unnecessary duplication of data, best is to use this option. Upon selecting, this inserts a HTML embed into your current Note from you selected it. In which you will have options to play around.
For Row wise data, use Transposed Option in the table Selection dropdown.
To Save the Graph, right click on the image and click on Save Image as..
or Copy Image
.
Graph Utility: Update Viewer!
Once you insert a Viewer, by default that note will be considered as the default data source for the Embed. Incase if you want to use a different note as it's data source you need to select this option.
Note: If you are planning to insert a new viewer in a different note, that particular note will be updated as the Source. And the way how this Embed works is, it is universal across your notes. Hence when going back to earlier note where the Viewer was already inserted, then you need to use this Update Viewer
Option, for the Plugin to pick up the latest note as its source.
Easy Table Selection:
Automatically identifies tables in your markdown. You just have to select which table that you want to select in the order in which it is present in your note.
Variety of Chart Types:
Line, bar, pie, and advanced charts as well.
Customizable Axes:
Choose which data goes on the X, Y, or Z axis. (Limited to Column data alone for now!)
Immediate Visualization:
View your chart right in your document. Quickly compare and see which one suits you best for your visualization.
Select your Fav Animations:
Feeling overwhelmed by your data. Have some fidgeting with some animation, see which one is distracting you and get a chance to unwind occasionally.
Troubleshooting
No Tables Found? Make sure your markdown contains properly formatted tables.
Chart Not Showing? Ensure you’ve selected the right data for the chart’s axes.
For more details, refer to the Full Documentation in the Instruction below or comment if you need support.
Happy charting! 🎉
name | Graph Utility |
icon | query_stats |
setting | Current_Note_UUID [Do not Edit!] |
description | Thinking to Visualize your Tables. Look no were else, this is your Go To Plugin Tool. |
instructions |
August 22nd, 2024 - Built the basic frame work of the viewer, using markdown data as source for charts, added basic charts, x and y axis details. Tested with dummy data, was working fine. Fixed the the data fetched from the amplenote, like formatting, cleaning up empty rows, applying headers if there isn't or generally, removing any html comment tags etc. To handle multiple tables in a note is challenging, a separate method need to be followed.
August 23rd, 2024 - Started from where I left off. After multiple iterations completed the worked code to fetch multiple tables from amplenote note, and make into a clean and organized format. Also figured out a way to fetch data from those tables separately, and use them into the charts that were already existing, this step was challenging, multiple parameters and functions involved. I figured out to give an download option, and included html, md, and copy only tables to new note. Then added advanced charts and gave some info into the chart, about the note from which the table data is extracted from. Also added info buttons for easy readability and understanding on how to use. When implementing the Embed, stuck with few errors as the scripts word independently, hence some scripts from chart.js were not utilized by my create chart scripts. Hence Embed is going on Hold, until I figure out a solution.
August 24th, 2024 - Images, Documentation, Publish, Email, Discord! After Lucian confirmed and shared the update to fix the above mentioned embed issue, tested it and it was working, implemented, added Animations and also add documentation for the Animations as well. You will thank me for it, as it clearly can help you to figit
with when you are feeling overwhelmed by your number work! haha! Also added Update View option!
August 25th, 2024 + August 26th, 2024 - Added Transpose for Row wise data. Disabled Auto populate column names and use the names already existing in the Table. Skipping download Image option, as right click and save as is enabled by default. Testing of all the feature mentioned earlier in this line, and also respective documentations required. Added Multiselect, in the backend still working on it (Will be applicable only for few charts!).
October 14th, 2024 - Updated the name of the selection. Added CSV Download Option. Tested. Rolled-out.
Markdown Parsing: Splits and extracts tables from markdown text.
Dropdown Population: Fills dropdown with table options.
Table Data Extraction: Retrieves headers and rows from selected table.
Axis Dropdown Updates: Updates X, Y, Z axis dropdowns based on table data.
Chart Creation: Uses Chart.js to render charts based on selected table and axis.
Interactive Updates: Re-renders chart on table or axis change.
Dataset Generation: Prepares datasets for Chart.js visualization.
Figure out a way to get the Embed working. - In progress
Have the Ability to Select Rows as data chain for the Graphs. Currently only support Columns.
Transpose the table as per requirements. Use Transpose for Row wise Data.
Have to Ability to Select First Column or Row as Headers. Currently applies Headers irrespective of how the source table is.
Disabled auto populate Column names
Provide a download Image option or save image option or copy image option to the Interactive charts.
Right click and save Image!
CSV format.
Future Ideas in the Bucket:
Note: Upon request, will implement Audit function similar to Gallery Plugin. (If at least 15 comment or unique interactions of implementation of Audit is useful, I can make it happen).
High-Level Explanation of the Code For Curious Readers and Explores! Thank you if you have made till here. You are Awesome, if you are reading this! 😀. Have a Great Day Ahead!
Time Invested For this Plugin: 8h 9m + 11h 48m + 5h 49m + 3h 40m + 4h 46m + 1h 10m = ~35h 24m. [Not including the ideas popping up randomly when doing daily rituals, only Screen Time.]