-
Notifications
You must be signed in to change notification settings - Fork 22
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
Interface of exported functions in package #41
Comments
I implemented It only appears when app is saving plot into |
I found a workaround to avoid the problem. The problem is caused by |
plot functions in visualization page are finished, with help updated and linked in first post. |
plot for variograms is done. |
I moved individual code examples in each function into a vignette, since most of them are part of a workflow, and it's easier to explain them under one document. |
plot for home range and occurence are done. Though it will take quite some efforts to write example code for this part, since I need to duplicate the in app process of maintaining model list and names etc with a different workflow as simple as possible. |
I have finished on map page, and updated the repo and reference website. With almost all functions finished and documented, I updated the first post with the reference website page. You can click the reference page to look at help on every function. I decided to move code examples into a single vignette so there is no example in help now. It will take some time to write the vignette, because I need to reproduce a lot of user selections and a lot of operations in app which are not exported in package yet (and probably need a different usage). |
@jmcalabrese @chfleming You can have a look at the vignette, hopefully it's not hard to read. I have updated the repo, the package website, and set the package version to |
I just updated the hosted app to match the package version. Next I'll look at the map animation possibilities before our next meeting. |
@xhdong-umd: Thanks for putting the package vignette together. Some comments and edits to the vignette are in the attached .pdf. Let me know if you have question or want to discuss any of it. |
@jmcalabrese Thanks for the edits, the vignettes is in a much better shape now. I probably should take more time to review and edit it again, though it was hard to resist the urge of finishing it before the holiday vacation starts 😅. Here is a diff of the RMarkdown. You can choose among source diff mode, rich diff mode or view the file directly. For some of your comments:
|
I have added a Though one tricky point in parallel core setting is that there are physical cores and logical cores. A windows pc with 4 physical cores often have 8 logical cores via hyperthread. The usual advice is to use physical cores - 1, however I found it's better to use To make sure some physical cores are not used I cannot use logical core number in this mode. So it's possible the default mode used 8 logical cores with 4 physical cores machine, but with 1 reserved core it can only use 3 cores. |
Hi @xhdong-umd , nice work. I have some minor suggestions. @jmcalabrese may feel free to chime in.
|
@chfleming I'll try to make some methods to generic. Some comments:
# default usage
plot(vario_list)
# more parameters
plot(vario_list, model_list = NULL,
fraction = 0.5, relative_zoom = TRUE, cex = 0.65,
model_color = "blue", columns = 2)
# for home range
plot(UD_list)
# more parameters
plot(UD_list, level_vec = 0.95, columns = 2, cex = 0.65,
tele_list)
|
|
@chfleming I updated some For the functions can be made generic, I went through the exported functions:
|
I realized if I move some functions to One alternative could be make a copy to |
I think we can copy the code to In addition to having a |
I'm not sure if I understand the suggestion.
In the process of creating interface and renaming/refactoring functions, I found I need to check every usage of changed functions, modify them and test the app thoroughly. That was time consuming and easy to introduce errors can go unfound if not tested. For parallel function, there are some code detecting platform as windows or linux/mac. If we abstract the core calculating part, both the new function and the original function will need this platform detection code and create a little bit duplication (although not much). If you want to limit to 1 cores, why don't just use |
Sorry, I was just thinking about non-exported functions like plapply. |
My plan with the integration:
|
I found the package installation need to download the whole tar ball now, which include a 10M folder of package website. I tried to exclude that folder, finally got a solution to satisfied multiple requirement from git, github, devtools, which involves creating 3 branches and some jumping hoops inside git. |
There is still some problem with git. It often took a lot of time when my requirement in git is a little bit complex... |
The parallel function is updated to reflect new changes on cores parameter. The core code is integrated into ctmm but ctmm and ctmmweb will maintain different customized versions since their needs are also different. The package site is updated with the current version, and I tagged it as |
@jmcalabrese @chfleming
It took me a lot of time to adjust the website, update the help documents.
UPDATE: With most functions completed and documented, it's easier to just use the reference website page for current exported functions:
features that not planned to export
The text was updated successfully, but these errors were encountered: