vis_value()
for visualising all values in a dataset. It rescales values to be between 0 and 1. See #100vis_binary()
for visualising datasets with binary values - similar to vis_value()
, but just for binary data (0, 1, NA). See #125. Thank you to Trish Gilholm for her suggested use case for this.vis_dat()
and vis_cor()
, and vis_miss()
see (#78). The next release will implement facetting for vis_value()
, vis_binary()
, vis_compare()
, vis_expect()
, and vis_guess()
.data_vis_dat()
, data_vis_cor()
, and data_vis_miss()
see (#78).vis_dat()
vis_miss()
and vis_guess()
now render missing values in list-columns (@cregouby #138)abbreviate_vars()
function to assist with abbreviating data names (#140)vis_miss()
is now rounding to integers - for more accurate representation of missingness summaries please use the naniar
R package.gather_
(#141)vis_value()
displayed constant values as NA values (#128) - these constant values are now shown as 1.vis_expect
would reorder columns (#133), fixed in #143 by @muschellij2.vis_miss()
displayed missing percentages between 0.1% and 0.5% as 0% due to rounding. Now it dislpays "<1%" by @zeehio at https://github.com/ropensci/visdat/pull/162.cli
internally for error messages.vis_cor()
to use perceptually uniform colours from scico
package, using scico::scico(3, palette = "vik")
.vis_cor()
to have fixed legend values from -1 to +1 (#110) using options breaks
and limits
. Special thanks to this SO thread for the answerglue
and glue_collapse()
instead of paste
and paste0
usethis::use_spell_check()
guess_parser
, to not
guess integer types by default. To opt-into the current behavior you
need to pass guess_integer = TRUE.
vis_compare()
for comparing two dataframes of the same dimensionsvis_expect()
for visualising where certain values of expectations occur in the data
vis_expect
show_perc
arg to vis_expect
to show the percentage of expectations that are TRUE. #73vis_cor
to visualise correlations in a dataframevis_guess()
for displaying the likely type for each cell in a dataframevis_expect
to make it easy to look at certain appearances of numbers in your data.vis_cor
to use argument na_action
not use_op
.vis_miss_ly
- thanks to Stuart Leepaper.md
for JOSSctb
.Fix bug reported in #75
where vis_dat(diamonds)
errored seq_len(nrow(x))
inside internal
function vis_gather_
, used to calculate the row numbers. Using
mutate(rows = dplyr::row_number())
solved the issue.
Fix bug reported in #72
where vis_miss
errored when one column was given to it. This was an issue
with using limits
inside scale_x_discrete
- which is used to order the
columns of the data. It is not necessary to order one column of data, so I
created an if-else to avoid this step and return the plot early.
Fix visdat x axis alignment when show_perc_col = FALSE - #82
fix visdat x axis alignment - issue 57
fix bug where the column percentage missing would print to be NA when it was exactly equal to 0.1% missing. - issue 62
vis_cor
didn't gather variables for plotting appropriately - now fixed
vis_dat
and vis_miss
add_vis_dat_pal()
(internal) to add a palette for vis_dat
and vis_guess
vis_guess
now gets a palette argument like vis_dat
plotly
vis_*_ly interactive graphs:
vis_guess_ly()
vis_dat_ly()
vis_compare_ly()
These simply wrap plotly::ggplotly(vis_*(data))
. In the future they will
be written in plotly
so that they can be generated much fastervis_*
familyvis_
family are now flipped by defaultvis_miss
now shows the % missingness in a column, can be disabled by setting show_perc_col
argument to FALSEflip
argument, as this should be the defaultvis_create_
, vis_gather_
and vis_extract_value_
.vdiffr
. Code coverage is now at 99%goodpractice::gp()
paper.md
written and submitted to JOSSflip = TRUE
, to vis_dat
and vis_miss
. This flips the x axis and the ordering of the rows. This more closely resembles a dataframe.vis_miss_ly
is a new function that uses plotly to plot missing data, like vis_miss
, but interactive, without the need to call plotly::ggplotly
on it. It's fast, but at the moment it needs a bit of love on the legend front to maintain the style and features (clustering, etc) of current vis_miss
.vis_miss
now gains a show_perc
argument, which displays the % of missing and complete data. This is switched on by default and addresses issue #19.vis_compare
is a new function that allows you to compare two dataframes of the same dimension. It gives a fairly ugly warning if they are not of the same dimension.vis_dat
gains a "palette" argument in line with issue 26, drawn from http://colorbrewer2.org/, there are currently three arguments, "default", "qual", and "cb_safe". "default" provides the ggplot defaults, "qual" uses some colour blind unfriendly colours, and "cb_safe" provides some colours friendly for colour blindness.1:rnow(x)
and replaced with seq_along(nrow(x))
.vis_miss_ly
.vis_dat_ly
, as it currently does not work.vis_guess()
and vis_compare
are very betavis_dat()
, vis_miss()
, vis_compare()
, and vis_guess()
vis_compare
to be different to the ggplot2 standards.vis_miss
legend labels are created using the internal function miss_guide_label
. miss_guide_label
will check if data is 100% missing or 100% present and display this in the figure. Additionally, if there is less than 0.1% missing data, "<0.1% missingness" will also be displayed. This sort of gets around issue #18 for the moment.miss_guide_label
legend labels function.vis_miss
, vis_dat
, and vis_guess
.vis_dat()
to use purrr::dmap(fingerprint)
instead of mutate_each_()
. This solves issue #3 where vis_dat
couldn't take variables with spaces in their name.=========================
plotly::ggplotly
! Funcions vis_guess()
, vis_dat()
, and vis_miss
were updated so that you can make them all interactive using the latest dev version of plotly
from Carson Sievert.=========================
vis_guess()
, a function that uses the unexported function collectorGuess
from readr
.=========================
vis_miss()
and vis_dat
actually run