Changes in version 0.21-11 New features - Added itimeplot() which is like iplot() but where the x-axis is date/time. - Added more examples of R/qtlcharts with Shiny. Also added examples of R/qtlcharts within a Jupyter notebook. - Added ability to control tool tip direction by a chart option. Minor changes - Added a package logo. Bug fixes - Updated d3panels to 1.8.9 (subtle fix in cichart; placement of tooltip in iplotMap) (Issue #79), and then to 1.9.0 (for itimeplot), 1.9.1, 1.9.2, and 1.9.4. - No longer using babel to transpile the javascript that coffeescript produces (using coffee -c rather than coffee -ct) because babel is giving errors. Recompiled with coffeescript 2.7.0 - Fixed a mistake in iboxplot_output and iboxplot_render (for using iboxplot with Shiny) - Fixed a bug where tooltips were misplaced, for iplotCorr() or iboxplot() within a Shiny app. (Issue #80) - Fixed a bug where new tooltips were created everytime you click the correlation matrix in iplotCorr(). (Issue #81) - Fixed help documents, which weren't being converted properly as I'd left off Roxygen: list(markdown=TRUE) from the DESCRIPTION file. (Issue #82) - Strip off names from non-list components of chartOpts. (Issue #69) - In iplotScantwo(), remove the form at the top when re-building widget; showed up in use with Shiny (Issue #84) - In iplotScantwo(), allow control of treatment of missing values in the phenotype x genotype plot on the right; the default is now to omit missing values. (Issue #50) - Revised iplotMap() so that the marker search box works within Jupyter notebooks. (Issue #85) Changes in version 0.20 (2026-05-23) - Update d3panels to 1.8.7 (fix of d3panels.formatAxis, for Issue #78) Changes in version 0.18 (2025-05-10) - In CITATION file, change citEntry() to bibentry(). - Upgrade d3 to 7.9.0 (and d3panels to 1.8.5) - Upgrade jquery to 3.7.1 Changes in version 0.16 (2022-01-07) - Update d3panels to 1.8.4, with improvement to formatAxis(). This should fix Issue #77. - Fix qtlchartsversion() to handle case like "0.14" Changes in version 0.14 (2021-08-06) - Upgrade D3 to 7.0.0 (and d3panels to 1.8.0) - Allow iplot() to not take y argument (in which case we move x to y and take x to be indices). (Issue #73) - Add horizontal argument to iplotMap() to lay out the chromosomes horizontally. This was already available as a chartOpts option, but this makes it easier. (Issue #67) - Fix error in itriplot() for case of a single point (Issue #76) Changes in version 0.12-10 (2020-09-25) - Replaced use of d3-tip with custom tool tips, and upgraded to D3 version 5. - itriplot() will now take labels from the column names of the probabilities, p. Also has an option for grid lines. - Allowed title as chart option in iplotMScanone(), iplotScanone(), iheatmap(). - Added scat_title chart option to ipleiotropy(), for a title on the scatterplot panel. - Filled in some missing text in the help info for iplotMScanone(). - Converted documentation to markdown. - Fixed use of class(), replacing constructions like "cross" %in% class(object) with inherits(object, "cross"). Changes in version 0.11-6 (2019-02-05) - Fix bug in idotplot() so that it works with a single group. - Fix bug in iplotMap() so that the drop-down menu works in Firefox. Changes in version 0.11-4 - Update to use CoffeeScript v 2.2.2. Using babel to compile to ES5. - Switch from bower to yarn for javascript dependency management. - Revise scat2scat() so that the chart options xlab2 and ylab2 can be vectors of length of scat2data, so that each dataset can have different x- and y-axis labels. Default is to take them from the column names of the datasets in scat2data. Changes in version 0.10-1 - All charts can now take a heading and a footer within chartOpts. The former will make an
).
Changes in version 0.9-6 (2017-06-01)
- All charts now can take a caption within chartOpts which will show
up as text below the figure. This is intended for stand-alone html
files.
Changes in version 0.9-5
- Added new tool for exploring pleiotropy between two traits,
ipleiotropy().
- Fixed X chromosome case in iplotScantwo, so that only relevant
two-locus genotypes are shown.
- Added new chart option pointsize for iplotCorr.
- In the coffeescript functions, ensure that list arguments like
margin have all of the necessary components. This avoid the problem
of everything being messed up if for example margin is specified
within defining margin.inner.
- lodcharts now includes a quantitative scale for position on the
x-axis in the case of a single chromosome
- In iplotScanone and iplotScantwo, in phenotype x genotype plots when
switching between markers on the same chromosome, animate the
movement of the points rather than destroying and re-creating the
panel.
Changes in version 0.8-2
- Updated to use D3 version 4.
- Also updated d3panels, d3-tip, jquery, and jquery-ui.
Changes in version 0.7-8 (2016-06-28)
- Rewrite underlying javascript to use new version of d3panels.
- Add a new chart, scat2scat. The idea is to summarize each of a long
series of scatterplots with a pair of numbers. Then a scatterplot of
those summary statistics is linked to the underlying details: click
on a point in the main scatterplot and have the underlying
scatterplot be shown.
- Add a new chart, itriplot, for plotting trinomial probabilities,
represented as points in an equilateral triangle.
- Refactor iplotPXG and idotplot so that idotplot is the main
function, and iplotPXG calls it.
- Add some additional options, such as horizontal for iplotMap and
iplotPXG.
- Change the name of some options, such as linecolor and linewidth in
iplotCurves (in place of strokecolor and strokewidth).
- Add a digits argument for all plot functions, with the aim to reduce
the size of the datasets included in the resulting charts.
- Removed the vignettes from the package (for complicated reasons);
they're available at the R/qtlcharts website.
Changes in version 0.6-6 (2016-04-21)
- Fix proliferation of tool tips
- For use with Shiny, clear SVG before drawing
Changes in version 0.5-25 (2015-11-09)
- Skip Rmd and html tests run on CRAN (so faster, and because the Rmd
tests won't work on Solaris as they need pandoc).
Changes in version 0.5-23 (2015-11-08)
- Changed license and author list in order to post the package on
CRAN, https://cran.r-project.org
- idotplot and iplot now use the names of the input data as individual
IDs if indID is missing or NULL.
Changes in version 0.5-18
- Fixed a bug in iplotScanone with pxgtype="ci". In the case of
phenotypes with missing values, the confidence intervals were
incorrect.
Changes in version 0.5-15
- iplotCorr has argument scatterplots that controls whether
scatterplots will be shown when clicking on pixels in the heatmap.
(If scatterplots=FALSE, we skip the scatterplots.)
Changes in version 0.5-13
- iplotMScanone can plot just points (rather than curves) for the LOD
scores and QTL effects in the lower and right-hand panels.
- Fix a bug in iplotMScanone (x-axis labels in right-hand plot weren't
being shown)
Changes in version 0.5-10
- Included bower information, about the javascript libraries, within
the source package.
Changes in version 0.5-8
- Got the package working with jsonlite, as htmlwidgets has now
switched from RJSONIO to jsonlite, for converting R objects to JSON.
Changes in version 0.5-4
- Added setScreenSize function for controlling the default sizes of
charts.
Changes in version 0.5-3
- Added idotplot function for plotting a quantitative variable in
different categories. (It's just like iplotPXG, but with data values
not connected to a cross object.)
- Reorganized the d3panels code: just using d3panels.min.js and
d3panels.min.css rather than linking to js code for individual
panels.
Changes in version 0.5-1
- Refactored the entire package to use htmlwidgets. A big advantage is
that the charts now work nicely within RStudio
- To save a plot to a file, you now need to assign the result of a
plot function to an object and then use the htmlwidgets function
saveWidget.
library(qtlcharts)
library(qtl)
data(hyper)
hyper <- calc.genoprob(hyper, step=1)
out <- scanone(hyper)
chart <- iplotScanone(out, hyper)
htmlwidgets::saveWidget(chart, file="hyper_scanone.html")
- It's now simpler to include interactive charts within an R Markdown
document. You simply make the plots in a code chunk in the way that
you would at the R prompt. There's no longer a need to worry about
print_qtlcharts_resources() or results="asis".
- Separated out the basic panel functions as a separate repository,
d3panels, to make it easier for them to be used separately from
R/qtlcharts.