Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[MPI_WP2]: 2. IsoMemo skin IsoMemo app #69

Closed
7 of 12 tasks
arunge opened this issue Oct 11, 2022 · 3 comments
Closed
7 of 12 tasks

[MPI_WP2]: 2. IsoMemo skin IsoMemo app #69

arunge opened this issue Oct 11, 2022 · 3 comments
Assignees
Labels
IsoMemo App User Story Informal, natural language feature description

Comments

@arunge
Copy link
Contributor

arunge commented Oct 11, 2022

Updates for Isomemo skin: higher level of data fetching

  • For the Isomemo app (https://github.com/Pandora-IsoMemo/iso-app), introduce a higher level of data fetching.

    Currently a script is used to map data from across different databases into a single table stored in our servers (https://github.com/Pandora-IsoMemo/iso-app/tree/main/R).
    This script is something that can be edited as databases are added/removed/modified. The script should be modified so that a new option of allows for the creation of different data maps (between original data sources and our repository). -> Add new schemas iso-data#4
    In terms of the IsoMemo skin interface there would be a selection option (above “Database selection”) to select a single data map. Once a map is selected the options for Categories and corresponding fields are automatically updated. In the new script one should be able to give a link to a pdf file describing the metadata of each map). This this change implies also that the following will have to be updated (see https://github.com/Pandora-IsoMemo/iso-data/tree/main/R):

    • Connection to cross-references citation
    • Saving queries (rename “Save data selection” as “Save query)
    • IsoMemo CRAN package (include access to metadata file)
    • Data fetching via URL

    Select categories or fields: buttons to select all/none (see figure below)

    image

New option in the IsoMemo skin to load pre-saved queries

  • Add a new option in the IsoMemo skin to load pre-saved queries (these correspond to the options illustrated in the figure above). These will be stored in GitHub. A text file with fixed named/location (in GitHub) but editable will be used to list these queries or a directory will be read. -> Presaved queries data-tools#55
    • potentially new tasks: save both sql codes and graphics merge the tables into the
      profiles, user can use the profiles and load them for the users
    • Button to visualize metadata file (mentioned above) for each data map

Iso-data (https://github.com/Pandora-IsoMemo/iso-data/tree/main/R): Implementing a Bibtext Citation for database entries

Updates for Pandora skin (see below)

image

  • Duplicate search: Users would be able to select fields of interest for duplicate identification from the Pandora skin within the IsoMemo app (https://github.com/Pandora-IsoMemo/iso-app/tree/main/R). In terms of matching options the user may select an exact match or if a string in one cell is contained within another. If the search should be case sensitive or not and if spaces should be considered or not. In terms of display, the user may select to add a new column where duplicates are flagged or only to display the first or last duplicate.
    Duplicate search within IsoMemo: similar to above for the IsoMemo skin (see text above). -> Detect duplicates for user selected fields #88

  • For Pandora skin, currently users have to manually select longitude and latitude fields (see figure above). This should remain possible. However, now when selecting a data resource, the app will check if there are fields named Longitude or Long and Latitude or Lat. If so, these are automatically assigned as latitude/longitude. -> Pandora Skin: automatically set Longitude and Latitude fields after loading data #67

Updates for Pandora & IsoMemo skin

  • User can set max char number #99
    be quite big depending on text size (see example below). Introduce an option to make these
    smaller by having the user setting a max number of characters to be displayed.

image

image

  • For the GUI option to set location of North Arrow/Scale by coordinate and to set their size

Restructure (split up) scripts for modeling tabs:

  • see: Restructure (split up) scripts for modeling tabs: #126

  • Clean code structure following the descriptions given at the following links:

    Currently, all options for one tab of one model, e.g. "AverageR" are in one script, e.g. 03-modelResults2D.R. Since they are so many inputs now, some of the inputs do depend on andinteract with each other. This leads to several rerenderings of the map if one input is changed and app becomes very slow.

    Isolate inputs and move them into their own module preventing them to interact with inputs outside this module. Additionally, add an "Apply" button to trigger a new rendering of the map.

    Modularize/isolate the following groups of inputs:

    • model inputs (currently most of them on the left side, an apply button already exists)
    • map view inputs, e.g. map range/center/... (currently most of them in the middle, an apply button already exists)
    • map content inputs, e.g. estimation type (currently most of them on the right side at the top, no button yet)
    • map style inputs, e.g. "show scale/title/...", colou/shape/... of location marks (currently most of them on the right side at the bottom, no button yet)

    If the user changes an input that belongs to one module, all dependencies inside this module
    will be set before the map is rendered again. This should significantly reduce the number of
    renderings.

    Reuse the newly created modules for e.g. map view and map style in the other modeling tabs
    like "TimeR". By this, reduce the current "copy-paste" amount of the code, which reduces the
    risk for bugs, and the time to fix them.

    Additionally, use a newer syntax for the shiny modules that enables to add tests for the module server functions.

  • Use frames where needed and where possible. -> [FOR ALL MPI APPS ]: Use of frames to make the interfaces easier to navigate (1,5 days) #4

Download/upload of model objects

Saved Maps tab

  • From Saved maps #20 Under the main menu currently named "Saved maps" create new numeric maps. If the user selects the option region-circle, one can select an option to create a numeric map for a certain radius around a certain selected location center. This is already implemented and works well. However, if a user selects the option region-square the options remain the same. This option should be renamed as region-rectangle. Here, the modelling options should be the upper left/lower right corners of the rectangle area to defined with respective lat/long inputs.
    Implementation within: OperatoR inputs #19
@arunge
Copy link
Contributor Author

arunge commented Jun 15, 2023

@isomemo the "higher level of data fetching" was added to the iso-app beta. The next step regarding this is to

  • test the ETL with a new schema and new data source
  • if necessary fix issues with the etl

Please feel free to provide the new sources.

@arunge
Copy link
Contributor Author

arunge commented Jul 11, 2023

@arunge
Copy link
Contributor Author

arunge commented Sep 22, 2023

I am closing here. There are issues in respective repositories for the last open tasks.

@arunge arunge closed this as completed Sep 22, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
IsoMemo App User Story Informal, natural language feature description
Projects
None yet
Development

No branches or pull requests

2 participants