Comments (7)
Would like to work on this issue . Could you explain the issue or share some screen recordings or photos of what you're trying to achieve?
from nexustimer.
I have something similar in mind to this example https://recharts.org/en-US/examples/HighlightAndZoomLineChart, but instead of selecting with the mouse, you would use the mouse to zoom in and out by scrolling the mouse wheel.
from nexustimer.
Just in case, I refer to this graph.
from nexustimer.
Sure! Working on it
from nexustimer.
I have a few concerns here.
- Scrolling it down takes me to the table. So achieving onMouseScrollDown event may be difficult. Could you give me any idea on overcoming that issue?
- I have no data on charts. How can i obtain that?
Wouldn't range slider be good idea to implement zoom in and out functionality.
from nexustimer.
- Scrolling it down takes me to the table. So achieving onMouseScrollDown event may be difficult. Could you give me any idea on overcoming that issue?
I havent had the chance to explore how to achieve that effect yet, but Im aware we are discussing a rather advanced feature.
The data starts with the raw data saved in localStorage under the key "cubes"
- Create a cube
- Go to the timer
- Select the created cube
- Spam some solves using key "Space", need hold 0.5s before start, press "Space" to stop it.
- Done, data generated
This data is then processed in a variable called "data." CategoryStatistics.tsx
is passed as a prop to the chart component at the same time.
This process transforms "cubes" into an organized array exclusively of solves sorted by date. The result is structured as follows:
cubeAll:
an array containing all-time solves for the selected cube.
cubeSession:
an array comprising solves from the current session for the selected cube.
global:
an array containing all-time solves for all cubes within the same category.
session:
an array consisting of solves from the current session for all cubes within the same category.
With these arrays at your disposal, you have the flexibility to generate and showcase a wide range of content.
In fact, as you may have already noticed, the current chart is not fully realized, as it presently only displays global statistics in a single line. However, my intention was to set it up for showcasing more diverse content, allowing for the inclusion of multiple lines on the same chart.
Objective is here: LineCharter.tsx
The data originates from the {data} parameter within the function and is subsequently processed through a transform function. This transform function serves to convert the array of solves, into a format suitable for display using the Recharter npm library, while converting milliseconds into seconds too.
Wouldn't range slider be good idea to implement zoom in and out functionality.
You require the mouse interaction to enable precise zooming in and out. Additionally, Im aiming for a modern design.
Another essential feature to implement is the ability to navigate between data points by dragging the mouse either to the right or to the left.
Overall, this project represents a significant work.
from nexustimer.
I have come across a library that already has all the required functionality implemented 😮. If you'd like, you can consider replacing the current one with this library. Here's the link to the docs:
https://tradingview.github.io/lightweight-charts/docs/series-types#line
from nexustimer.
Related Issues (20)
- Create a toast component for alerts HOT 1
- Improving modal accessibility for close actions HOT 2
- Organizing component overload HOT 3
- Alert user to provide a cube name for saving
- Pending megaminx cube
- Session statistics calculation HOT 1
- Not editable modal options HOT 8
- modal before delete cube HOT 5
- archive unique solves HOT 2
- Add error handler using "import" HOT 6
- Hide navbar while is solving
- Synchronize the selected cube after deleting it HOT 2
- Improve Spanish definition mixed with English
- Inaccurate pyramid image representation HOT 3
- Error using scrambles for 333 OH
- Add Data Validation using the 'Import' feature HOT 4
- Scramble do not show when solve is opened twice HOT 4
- Design a new user interface for the "deletion confirmation modal" for cubes.
- Timer starts unintentionally in mobile version
- Custom Time Formatting for Line Chart Statistics
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from nexustimer.