Closed the-x-at closed 3 years ago
I guess a simple helper function a la writeHaplopainterFile
should suffice? The unfortunate user (😄 ) could then invoke this function directly.
I assigned you to this @the-x-at - hoping you have the time to dig into this 😉
Unfortunately, things are not that straight forward. The option to write a haplopainter output file is passed to plotting-functions.R::haplopaint
(called via plotting-functions.R::doPlotPed
), which first generates a suitable data frame and then sees whether to render the pedigree or output the text file. Things are a bit nested here. I will see if this can be deconvoluted.
An input file for Haplopainter pedigree plotting software can be written by
FamAgg
only if the plotting method is set tohaplopaint
via a call toswitchPlotFun
. When this call is done, the package checks if Haplopainter is installed by trying to run a simple pedigree rendering. If this fails,FamAgg
falls back to kinship2-based plotting. This way an input file for later Haplopainter invocation can never be written. This scenario may happen (and has already happened to the unfortunate issue submitter) on a server installation where Haplopainter was not installed, but theFamAgg
user wants to draw pedigrees on another machine where that software is installed, for example when preparing publication figures.