Giter VIP home page Giter VIP logo

4dvd's People

Contributors

dafrenchyman avatar jorgeazzarelcaballero avatar snehaldhadge avatar zaydor avatar

Stargazers

 avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

4dvd's Issues

Add functionality to switch between different units

When we show air temperature data, we currently only show Celsius. It would be especially useful to be able to convert the data to be in Fahrenheit.

Other unit conversions should be available for datasets with different units. But Celsius to Fahrenheit is definitely the most important!

Rewrite colorMaps.json

Currently, the data structure of the colormaps is just a list. It would be more efficient if we instead organize the colormaps in a dictionary with key/value pairs with the key being the name of the color maps.

Should also add a "ShortName" value on top of the "FullName" attribute. ShortName would be displayed in the color map menu, so there are not any really long names in the menu.

Maybe also create a zero-centered vs non-zero centered toggle in the color map menu, similar to the inverse toggle.

Add globe "tool tips"

Sam suggested that clicking on the globe should bring the value of where you clicked at right next to the mouse instead of solely in the time series box.

Add more info to the information page

We're already storing a bunch of information about the dataset in the database. We have:

  • Original file location
  • Units
  • Date range
  • Description (on some of them, should add it for more)

We could certainly get more information as well. We should display this information (and maybe citation information as well) on the information section of the menu.

We also should put some information about the project here to. Ideas:

  • Link to this Github page
  • Link to sdsu.edu
  • Link to sdsu climate science
  • Copyright information

Organize the datasets (and colormaps) better

Right now, the FULL path of the dataset is currently displayed and we're using a | character to show the different levels. However, we're displaying all the datasets at once (along with all the different colormaps too.

I had built a menu system for the JavaScript only version of this code (https://github.com/dafrenchyman/climate). We should see about adding sub-menus to selecting a dataset. I'm thinking we use the same menu system the current system is currently using, just pop up more windows as you click into it.

Light and dark mode

Implement a light and dark mode for the website. Should probably also have a toggle in the graphical settings in the side nav.

Add a feature to request/view data from specific countries

The idea is that you can select a country and have the globe only show data from that country. You will then be able to view that country specific data in the time series menu and the other child menus.

If I remember correctly, Sam mentioned having this feature work for US specific data is the priority. May need to double check with Sam.

Remove autoFocus when opening new dialog menus

In angular, autoFocus is enabled by default but stylistically, it does not look too great. Currently, autoFocus is disabled on some dialog functions but not all. This should be fixed so that all dialog boxes disable autoFocus.

Starting shader is sometimes in the dark

When the website first loads a dataset, if the bump map takes too long to load, the shader makes the whole world look like it's night time.

This seems to only happen on first view. Switching to another Bump Mapping settings and back seems to fix it. The second visit to the website seems to be OK as well as the image has been cached.

Research needs to be done to figure out exactly why this happens and how to fix it.

Switch charting library

The original version of this software (https://github.com/dafrenchyman/climate) was pure Javascript. The charting library we used there is better than the one we're using in here (c3.js).

However, c3.js hadn't been updated in a while and wasn't compatible with the new version of d3 (which we use here to generate things like the legend).

It's time to switch back to that other charting library and/or research if there's a better one available in Angular now.

Rotating sphere in Firefox doesn't work well (update user input code)

The code I wrote to handle user input isn't terribly good. I hand coded it and it's pretty rough. There must be a library out there that can handle all of our input and make it work in all browsers correctly.

We could either do a quick fix, but the better solution would be to find a good mouse input library and let that take care of everything.

Legend always displays everything in degrees Celsius, even if its if it's not temperature

Currently the code converts everything in the database from Kelvin to Celsius. It does do a check, to make sure the value coming in is Kelvin, or it doesn't do the conversion.

We should update the code to give the user options to convert to different values and also be able to deal with other measurements.

The legend needs to be updated with this as well.

Remove "NOAA" from some dataset titles in database

Some datasets were accidentally added with "NOAA" as part of their title but they are actually datasets from NASA. We should give proper credit where credit is due.

Should probably talk to Sam on the specific datasets that are not from NOAA if you are unsure.

Wiki needed

A wiki how-to on how to get datasets into the system might be useful

Migrate some functions to backend

There are a couple of functions that are marked with comments in the settings.ts file that can be done more efficiently if we instead convert the functions to fetching data from columns in the database.

Make certain buttons more clear

While showing the website to colleagues, Sam found that some users are unsure what data is being used when opening the time series menu after you click on the globe, or what data is being downloaded when you click "Download Data" from the top row or from the time series menu.

Should probably also update the design of the time series box to be more clear and concise on what to expect when viewing the time series menu.

Sam suggested:

  • Adding the currently viewed date to the time series box
  • Adding the currently viewed pressure level to the time series box
  • Letting users know what they are about to download when clicking the "Download Data" buttons (maybe clearer tool tips?)

Add the ability to "draw" polygons on the globe

Add a feature to draw polygons on the globe that then only fetches the data inside of that polygon. Then, the data specifically inside the polygon can then be viewed in the time series menu and other child menus.

Note: this feature is only expected to be available when the user is viewing the 2D map

Move from ngx-charts to a new (better) charting library

When Snehal and I were creating the statistical and seasonal menus/charts/graphs, we were limited with ngx-charts charting ability and we were unable to make certain graphs such as a box graph.

Could also be worth looking into upgrading to the latest version of ngx-charts? There looks like there are some really interesting style changes we can use to "spice" things up.

Modify backend to fetch the "simple title" column from the Database

Currently, there is a 'quick fix' function that sets the titles and y-axis of graphs with some string manipulation based on the really long title given in the 4DVD database. I already set up the simple title column in the database, but I was having issues with procedures to fetch that data correctly.

Should also make sure a good majority of the datasets in the database have a simple title.

Update the styling/design of the website

The design of the website is a bit... underwhelming and more focused on functionality, compared to other similar websites. This is more of an overarching issue rather than a quick fix. But it should be noted and considered for future additions to the website.

Possible updates:

  • Creating a "simple" view and a "advanced" view for the different user needs
  • Migrating menu functions (like the graphical settings, information page) out of the menu?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.