-
Notifications
You must be signed in to change notification settings - Fork 6
add magMWdust function #19
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
Closed
Closed
Changes from 3 commits
Commits
Show all changes
24 commits
Select commit
Hold shift + click to select a range
847bff6
add magMWdust function, documentation, and lookup table
AngusWright 987c0b0
remove unnecessary eq2gal function
AngusWright d78e856
remove reference to old code in documentation
AngusWright 77597e9
add catch for empty data, and only display progress during interactiv…
AngusWright 7125a27
check show.status with isTRUE()
AngusWright d1ef6ae
remove dust key in documentation
AngusWright c0fbebc
update magMWdust to use lazy-loaded SFD_dust lookup rather than direc…
AngusWright a828188
update documentation for new dust.data input
AngusWright f8d91f2
update documentation to descibe the lookup usage
AngusWright e66a7d1
update magMWdust function to require dlon and dlat when using bespoke…
AngusWright b9746f1
catch non-numeric dlon and dlat
AngusWright b0c2190
only require dlon and dlat when plotting polygons
AngusWright b468e78
remove borders from polygons, tweak defaults for nicer plotting
AngusWright 718ad78
tweak default dlon dlat to reduce edge effects
AngusWright e9e7adc
update lookup documentation, now uses complete map
AngusWright 5c2da7c
version update
AngusWright c548a49
update behaviour for latitudes beyond \pm 90 to reflect, rather than …
AngusWright cacfda4
update magMWdust to use correct default dlat/dlon
AngusWright 15e52ef
remove outdated comment
AngusWright f183132
add SFD credit to authorship
AngusWright b7aea6a
move citation to references block in docs
AngusWright a1fa7a6
add label cex option to magproj
AngusWright f0359cb
add txtProgressBar to namespace imports for magMWdust
AngusWright a558a05
add alias to SFD_dust to manual for magMWdust
AngusWright File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,44 @@ | ||
| #========================================= | ||
| # | ||
| # File Name : magMWdust.R | ||
| # Created By : awright | ||
| # Creation Date : 03-06-2026 | ||
| # Last Modified : Wed Jun 3 13:40:13 2026 | ||
| # | ||
| #========================================= | ||
|
|
||
|
|
||
| # Define a plotting helper that overlays Milky Way dust on a projected sky plot. | ||
| magMWdust <- function(type = "p", pch = 16, pt.cex = 0.5, opacity.range = c(0, 0.5), whiteblack.percentile = c(0.5, 0.95), stretch = "lin", min.opacity.plot = 0.01, ...) { | ||
|
|
||
| # Restrict the drawing style to points or polygons. | ||
| if (!type %in% c("pl", "p")) stop("magMWdust function expects type of 'p' (for points) or 'pl' (for polygons) only") | ||
| # Read the dust map data, which is a dlon=dlat=1 sampling | ||
| dlon <- dlat <- 1 | ||
| dust_all<-read.csv(system.file("extdata","SFD_dust.csv", package = "magicaxis")) | ||
| # Map dust values onto an opacity scale for plotting. | ||
| dust_all$map <- magicaxis::magmap(dust_all$ebv, range = opacity.range, hicut = whiteblack.percentile[2], locut = whiteblack.percentile[1], stretch = stretch)$map | ||
| # Drop grid cells that would be too faint to plot usefully. | ||
| dust <- dust_all[which(dust_all$map > min.opacity.plot), ] | ||
|
|
||
| # Draw filled polygons when polygon mode has been requested. | ||
| if (type == "pl") { | ||
| # Open a progress bar for the per-cell polygon loop. | ||
| pb <- txtProgressBar(style = 3, min = 1, max = nrow(dust)) | ||
|
AngusWright marked this conversation as resolved.
Outdated
|
||
| # Iterate over each retained sky cell. | ||
| for (i in 1:nrow(dust)) { | ||
|
AngusWright marked this conversation as resolved.
Outdated
|
||
| # Project and draw the four corners of the current sky cell. | ||
| magicaxis::magproj(c(dust$ra[i] - dlon/2, dust$ra[i] - dlon/2, dust$ra[i] + dlon/2, dust$ra[i] + dlon/2), c(dust$dec[i] - dlat/2, dust$dec[i] + dlat/2, dust$dec[i] + dlat/2, dust$dec[i] - dlat/2), type = type, add = TRUE, col = hsv(v = 0, alpha = dust$map[i]), ...) | ||
| # Advance the progress bar after drawing the current polygon. | ||
| setTxtProgressBar(pb, i) | ||
| } | ||
|
AngusWright marked this conversation as resolved.
Outdated
|
||
| # Close the progress bar when the polygon layer is complete. | ||
| close(pb) | ||
|
AngusWright marked this conversation as resolved.
Outdated
|
||
| } else { | ||
| # Draw the retained dust grid cells as projected points. | ||
| magicaxis::magproj(dust$ra, dust$dec, type = "p", add = TRUE, pch = pch, cex = pt.cex, col = hsv(v = 0, alpha = dust$map), ...) | ||
| } | ||
| # Return invisibly because this function is used for its plotting side effects. | ||
| return(invisible(NULL)) | ||
| } | ||
|
|
||
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.