Git Product home page Git Product logo

piratical / madeline_2.0_pde Goto Github PK

View Code? Open in Web Editor NEW
19.0 19.0 18.0 3.92 MB

The Madeline 2.0 Pedigree Drawing Engine (PDE) is a pedigree drawing program designed to handle large and complex pedigrees with an emphasis on readability and aesthetics. The program was designed primarily for human pedigrees.

License: GNU General Public License v2.0

CMake 1.59% C 10.15% HTML 6.86% C++ 80.25% CSS 0.24% Shell 0.79% Python 0.08% JavaScript 0.05%

madeline_2.0_pde's People

Contributors

countdigi avatar felipemullen avatar piratical avatar ritukn avatar sam-m888 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

madeline_2.0_pde's Issues

Typographers' quotes in madeline feedback

Hey there,

I develop an internal web app for a genetic diagnostics company that uses your engine to draw pedigrees from our patient data. It's worked fantastically well so far.

However, a recent release has changed the feedback Madeline displays (and that my server parses to find the file Madeline creates) from using standard double quotes to typographers' quotes. If there is not a better way to locate the file Madeline creates, then is it possible to change this back, or at least know if there will be consistency in this particular line going forward?

Thanks!

change from c++98 to c++11 breaking CI

I'll take a look - travis-ci is broke but the way we run the driver script it is reporting build passed - I'll update the ci to catch that error and also look at how to fix this.

cmake errors with cygwin on Win 7

I'm trying to help my wife (who works with Tasha Fingerlin) install Madeline 2 on a Windows 7 machine. We are following the instructions at http://madeline.med.umich.edu/madeline/install.php

We've hit a roadblock in the installation, and neither of us has much experience debugging this type of install. So any guidance would be appreciated (and we recognize that development has primarily happened on osx and linux).

For the cygwin installation, we downloaded the 64-bit cygwin. I think we've been able to follow the instructions quite literally. In many cases, their were multiple versions of the required packages available during cygwin installation. When that happened, we download the version with lib in the name (the other versions of those packages were under the debug, perl or python directories).

At the configure stage, when we run cmake . we get the following error:

CMake Warning at /usr/share/cmake-3.6.2/Modules/Platform/CYGWIN.cmake:15 (message):
  CMake no longer defines WIN32 on Cygwin!

  (1) If you are just trying to build this project, ignore this warning or
  quiet it by setting CMAKE_LEGACY_CYGWIN_WIN32=0 in your environment or in
  the CMake cache.  If later configuration or build errors occur then this
  project may have been written under the assumption that Cygwin is WIN32.
  In that case, set CMAKE_LEGACY_CYGWIN_WIN32=1 instead.

  (2) If you are developing this project, add the line

    set(CMAKE_LEGACY_CYGWIN_WIN32 0) # Remove when CMake >= 2.8.4 is required

  at the top of your top-level CMakeLists.txt file or set the minimum
  required version of CMake to 2.8.4 or higher.  Then teach your project to
  build on Cygwin without WIN32.
Call Stack (most recent call first):
  /usr/share/cmake-3.6.2/Modules/CMakeSystemSpecificInformation.cmake:36 (include)
  CMakeLists.txt:8 (PROJECT)


-- Could NOT find BZip2 (missing:  BZIP2_LIBRARIES BZIP2_INCLUDE_DIR)
-- === NOTA BENE: === Madeline will use included bzip2
CMake Error at /usr/share/cmake-3.6.2/Modules/FindPackageHandleStandardArgs.cmake:148 (message):
  Could NOT find ZLIB (missing: ZLIB_LIBRARY ZLIB_INCLUDE_DIR)
Call Stack (most recent call first):
  /usr/share/cmake-3.6.2/Modules/FindPackageHandleStandardArgs.cmake:388 (_FPHSA_FAILURE_MESSAGE)
  /usr/share/cmake-3.6.2/Modules/FindZLIB.cmake:124 (FIND_PACKAGE_HANDLE_STANDARD_ARGS)
  src/CMakeLists.txt:259 (FIND_PACKAGE)


-- Configuring incomplete, errors occurred!
See also "/home/powersju/Madeline_2.0_PDE/CMakeFiles/CMakeOutput.log".
See also "/home/powersju/Madeline_2.0_PDE/CMakeFiles/CMakeError.log".

CMakeOutput.log is quite a long file, so I've put it in this gist
Here is the content of CMakeError.log

Again, thank you so much for any suggestions or help.

Pedigree not drawn where female has children with her nephew?

Hi Ed, I've attached a sample input file that isn't generating a drawing. Looks like person 5 has children (5,10) with her nephew (9). There is nothing in the log to indicate an error (I used the flag --debug). Thanks in advance for taking a look. I'm using Madeline2 on Windows.

test.txt

Disconnected Individuals

Hi Ed,

Is there any way to force Madeline to draw individuals not connected to anyone else?

Thanks
Grant

Unknown zygosity twins

Hi Ed,

Is there a way to show twins with unknown zygosity without supplying the DOB? In some cases I know that 2 individuals are twins, but I do not know their DOB or zygosity, so I'd like to display the ? in the circle like it does if you do know the DOB (like it does here: https://madeline.med.umich.edu/madeline/testdata/#tw).

Many Thanks
Grant

3rdParty/unzip/unzip.h:118:45: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'OF'

Hi,
I tried to compile from current HEAD but I receive:

...
Resolving user defined references...
Finding anchors and sections in the documentation...
Transferring function references...
Combining using relations...
Adding members to index pages...
In file included from /scratch/var/tmp/portage/sci-biology/madeline-9999/work/madeline-9999/3rdParty/unzip/unzip.c:12:0:
/scratch/var/tmp/portage/sci-biology/madeline-9999/work/madeline-9999/3rdParty/unzip/unzip.h:118:45: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'OF'
 extern int ZEXPORT unzStringFileNameCompare OF ((const char* fileName1,
                                             ^
/scratch/var/tmp/portage/sci-biology/madeline-9999/work/madeline-9999/3rdParty/unzip/unzip.h:131:32: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'OF'
 extern unzFile ZEXPORT unzOpen OF((const char *path));
                                ^
/scratch/var/tmp/portage/sci-biology/madeline-9999/work/madeline-9999/3rdParty/unzip/unzip.h:142:29: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'OF'
 extern int ZEXPORT unzClose OF((unzFile file));
                             ^
/scratch/var/tmp/portage/sci-biology/madeline-9999/work/madeline-9999/3rdParty/unzip/unzip.h:149:37: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'OF'
 extern int ZEXPORT unzGetGlobalInfo OF((unzFile file,
                                     ^
/scratch/var/tmp/portage/sci-biology/madeline-9999/work/madeline-9999/3rdParty/unzip/unzip.h:157:40: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'OF'
 extern int ZEXPORT unzGetGlobalComment OF((unzFile file,
                                        ^
/scratch/var/tmp/portage/sci-biology/madeline-9999/work/madeline-9999/3rdParty/unzip/unzip.h:170:37: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'OF'
 extern int ZEXPORT unzGoToFirstFile OF((unzFile file));
                                     ^
/scratch/var/tmp/portage/sci-biology/madeline-9999/work/madeline-9999/3rdParty/unzip/unzip.h:176:36: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'OF'
 extern int ZEXPORT unzGoToNextFile OF((unzFile file));
                                    ^
/scratch/var/tmp/portage/sci-biology/madeline-9999/work/madeline-9999/3rdParty/unzip/unzip.h:183:34: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'OF'
 extern int ZEXPORT unzLocateFile OF((unzFile file, 
                                  ^
/scratch/var/tmp/portage/sci-biology/madeline-9999/work/madeline-9999/3rdParty/unzip/unzip.h:196:42: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'OF'
 extern int ZEXPORT unzGetCurrentFileInfo OF((unzFile file,
                                          ^
/scratch/var/tmp/portage/sci-biology/madeline-9999/work/madeline-9999/3rdParty/unzip/unzip.h:222:39: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'OF'
 extern int ZEXPORT unzOpenCurrentFile OF((unzFile file));
                                       ^
/scratch/var/tmp/portage/sci-biology/madeline-9999/work/madeline-9999/3rdParty/unzip/unzip.h:228:40: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'OF'
 extern int ZEXPORT unzCloseCurrentFile OF((unzFile file));
                                        ^
/scratch/var/tmp/portage/sci-biology/madeline-9999/work/madeline-9999/3rdParty/unzip/unzip.h:235:39: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'OF'
 extern int ZEXPORT unzReadCurrentFile OF((unzFile file, 
                                       ^
/scratch/var/tmp/portage/sci-biology/madeline-9999/work/madeline-9999/3rdParty/unzip/unzip.h:249:32: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'OF'
 extern z_off_t ZEXPORT unztell OF((unzFile file));
                                ^
/scratch/var/tmp/portage/sci-biology/madeline-9999/work/madeline-9999/3rdParty/unzip/unzip.h:254:27: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'OF'
 extern int ZEXPORT unzeof OF((unzFile file));
                           ^
/scratch/var/tmp/portage/sci-biology/madeline-9999/work/madeline-9999/3rdParty/unzip/unzip.h:259:42: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'OF'
 extern int ZEXPORT unzGetLocalExtrafield OF((unzFile file,
                                          ^
/scratch/var/tmp/portage/sci-biology/madeline-9999/work/madeline-9999/3rdParty/unzip/unzip.c: In function 'unzOpen':
/scratch/var/tmp/portage/sci-biology/madeline-9999/work/madeline-9999/3rdParty/unzip/unzip.c:431:2: warning: implicit declaration of function 'unzGoToFirstFile' [-Wimplicit-function-declaration]
  unzGoToFirstFile((unzFile)s); 
  ^
/scratch/var/tmp/portage/sci-biology/madeline-9999/work/madeline-9999/3rdParty/unzip/unzip.c: In function 'unzClose':
/scratch/var/tmp/portage/sci-biology/madeline-9999/work/madeline-9999/3rdParty/unzip/unzip.c:450:9: warning: implicit declaration of function 'unzCloseCurrentFile' [-Wimplicit-function-declaration]
         unzCloseCurrentFile(file);
         ^
/scratch/var/tmp/portage/sci-biology/madeline-9999/work/madeline-9999/3rdParty/unzip/unzip.c: At top level:
/scratch/var/tmp/portage/sci-biology/madeline-9999/work/madeline-9999/3rdParty/unzip/unzip.c:496:47: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'OF'
 local int unzlocal_GetCurrentFileInfoInternal OF((unzFile file,
                                               ^
make[2]: *** [3rdParty/unzip/CMakeFiles/unzip.dir/build.make:63: 3rdParty/unzip/CMakeFiles/unzip.dir/unzip.c.o] Error 1

Is there a way to disable compilation of the 3rd-party stuff? I have sys-libs/zlib with minizip support installed. ;-)
Better add it to the dependencies at http://madeline.med.umich.edu/madeline/building.php and drop it from your git tree. ;-)

Madeline 2.0 PDE : information retrieval from Mysql Database

This is Annapoorna, from The University of Transdisciplinary Health Sciences and Technology (TDU), Bangalore, India ; wishing you a Very Happy and Healthy 2021. I write to you today asking for assistance with regard to your pedigree drawing engine Madeline 2.0

I am presently working on a project that requires using pedigrees for studying inheritance patterns of genetic traits. Madeline 2.0 seems to be an excellent choice to do this, however, I am unable to find information regarding how Madeline 2.0 is able to read data from a Mysql data table. The information brochure found online, i.e Madeline 2.0 PDE Docs, states it can do so but does not elaborate.

I request you to please guide me in this regard. Looking forward to hearing from you.

Can't have half-siblings and grandparents at the same time?

Hi there! Checking in from a gene diagnostics company. Madeline has been helpful so far.

Hope I'm not being a bother, but I've been having issues with the engine when trying to add both half-siblings and grandparents to a family. Half-siblings are well-supported, but as soon as grandparents are introduced, entire branches of the family will simply stop being drawn.

I'll add tab-delimited data files and the associated drawings to show you what I mean. Please note that the non-data .txt files are the XML drawing files, but GitHub doesn't support them with their native extension:

Working data:
data_for_working_ped.txt
Working pedigree drawing:
working_ped.txt

Data with parents newly added to rightmost father:
data_for_bad_ped.txt
Broken pedigree drawing:
bad_ped.txt

undefined reference to `curl_global_init'

Typing make gives the following error building on CentOs7

[100%] Linking CXX executable madeline2
CMakeFiles/madeline2.dir/Network.cpp.o: In function Network::getNetworkFile(char const*)': Network.cpp:(.text+0x14a): undefined reference to curl_global_init'
Network.cpp:(.text+0x14f): undefined reference to curl_easy_init' Network.cpp:(.text+0x175): undefined reference to curl_easy_setopt'
Network.cpp:(.text+0x194): undefined reference to curl_easy_setopt' Network.cpp:(.text+0x1b3): undefined reference to curl_easy_setopt'
Network.cpp:(.text+0x1d1): undefined reference to curl_easy_setopt' Network.cpp:(.text+0x1f7): undefined reference to curl_easy_perform'
Network.cpp:(.text+0x207): undefined reference to `curl_easy_cleanup'
collect2: error: ld returned 1 exit status
make[2]: *** [src/madeline2] Error 1
make[1]: *** [src/CMakeFiles/madeline2.dir/all] Error 2
make: *** [all] Error 2

Force male partner to always render on left in relationship line

Per the NSGC recommendation on the Standardized Human Pedigree Nomenclature:

If possible, male partner should be to left of female partner on relationship line

Having issues finding out how to force drawings to always render the male partner on the left. If you have any pointers where to look in the code, would much appreciate :).

Example data:

FamilyId
IndividualId
Gender
Father
Mother
Deceased
Proband
DOB
MZTwin
DZTwin
Sampled

Test U0p100 M .      .      Y . .          . . .
Test U0p101 F .      .      Y . .          . . .
Test U0m100 M .      .      Y . .          . . .
Test U0m101 F .      .      Y . .          . . .
Test U00200 M U0p100 U0p101 Y . .          . . .
Test U00201 F U0m100 U0m101 Y . .          . . .
Test U00102 M .      .      . . .          . . .
Test U00107 F U00200 U00201 . Y .          . . .
Test U00108 F U00102 U00107 . . .          . . .
Test U00109 F U00102 U00107 . . .          . . .

Resulting drawing from example data above:
screen shot 2016-11-21 at 3 19 02 pm

Example issues:

  • Female Proband (U00107) is drawn on left (I suspect this is because the ancestry relationships exist for this individual, if Proband was Male, he would appear on the left)
  • Proband parents are always drawn with Female/Mother (U00201) on left

parents from an inbreeding line were not sticked together

Hi there,

I'm trying to draw some pedigree maps with madeline PDE and most of them are related to inbreeding program. I found a problem and don't know how to solve it:

parents from an inbreeding line were not stuck together, they were connected by dashed lines

it looks like this
inbreeding
f1_005 and f1_006 looks good, but the others are not.

How can I make the madeline to draw all parent pairs in the same manner as the f1_005Xf1_006?

Thank you.

Mother-son matings

Thank you for this wonderful program. Mother-son and father-daughter relationships are rare among humans but not so among animals and plants. Mythology is full of these cases too (I know, it'd be an unintended use of the program). Still, any chance such cases of inbreeding could become available? Consider this famous and relatively simple pedigree:

FamilyId IndividualId Gender Father Mother
1 Oedipus M Laius Jocasta
1 Polyneices M Oedipus Jocasta
1 Eteocles M Oedipus Jocasta
1 Ismene F Oedipus Jocasta
1 Antigone F Oedipus Jocasta

If we try to run, we receive:

Unrecoverable Error: Individual::addSpouse(): Oedipus's spouse Jocasta is also his mother: Program currently cannot handle mother-son matings.
terminate called after throwing an instance of 'Exception'
Aborted (core dumped)

Thanks!

Segfault when creating last founder

Hi,

I’m working on a multi-founder pedigree. I have something like eight founding pairs. When I get to the very last founder, I have to make virtual parents for them; otherwise I get a Segfault error. Is there a way around this?

Simple pedigree incorrectly displayed

Hi,

I recently discovered your Madeline software which is by far the best I ever saw for pedigree drawing. I look forward including your software into my own research projects.

However, I found some inconsistencies when using it to draw some test pedigree using the tab delimited format. It definitely seems to be a minimal reproducible bug, but I let you judge by yourself.

here is the pedigree (tab-separated file):

FamilyID	IndividualID	Gender	Father	Mother
3	44	M	.	.
3	1	M	.	.
3	2	F	.	.
3	6	M	1	2
3	7	F	.	.
3	15	F	6	7
3	16	F	6	7
3	17	F	44	7

Here is the command and output:

$ uname -a
Darwin GroBook.local 16.4.0 Darwin Kernel Version 16.4.0: Thu Dec 22 22:53:21 PST 2016; root:xnu-3789.41.3~3/RELEASE_X86_64 x86_64
$ ./src/madeline2 minimal_bug_pedigree.data
┌─────────────────────────────┐
│ Welcome to Madeline 2.0 PDE │
└─────────────────────────────┘
--------------------------------------------
 LABELS                          TOTAL: 0
--------------------------------------------
--------------------------------------------
Parser::readFile(): Opening a(n) UTF-8 file ...
Reading file data in delimited format ...
Table 1 is a pedigree table.
┏ Start of    addPedigreesFromDataTable ┓
Warning: Individual 17 already exists in pedigree 3: Ignoring replicated individual from data file.
Default ordering of siblings.
┗ End of      addPedigreesFromDataTable ┛
┏ Start of    draw                      ┓
Pedigree output file is “3_pedigree.svg”
┗ End of      draw                      ┛

And here is the result (svg converted into png):
capture d ecran 2017-02-18 a 08 24 19

As you can see, there is clearly a problem with the output !

There is also a minor issue with the warning regarding the last entry of the file, but this is really minor since it does not seem to alter the result.

Hoping you will be able to suggest a fix. Please let me know if I can assist you in any way ...

Regards,

GN

CMake error during build in Mac OSX

Hello! I'm trying to build Madeline 2.0 locally on my Mac, running OSX 10.11.6. I'm having a recurrent error:

-- === NOTA BENE: === Madeline will be installed in /usr/local
CMake Error at /opt/local/share/cmake-3.9/Modules/FindDoxygen.cmake:542 (elseif):
  given arguments:

"NOT" "doxygen" "IN_LIST" "Doxygen_FIND_COMPONENTS"

  Unknown arguments specified
 Call Stack (most recent call first):
  CMakeLists.txt:57 (INCLUDE)


-- Configuring incomplete, errors occurred!

I realize that this is a CMake error, so this might not be the best place to ask, but debugging this kind of build is a bit over my head- a few hints would be appreciated!

I've installed XCode (version 7.3.1), gettext (v. 0.19.8.1), and reinstalled doxygen (1.8.13).

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.