sos: dot preview fails (largely) with dynamic workflow

With the following example, because the first image is very small, later images are cropped to the small size, leading to a gif that shows only a small fraction of the DAG.

# preview multiple DAG
%preview -n target.dot -v4
!touch test.bam

%run -t test.vcf -d target.dot

# this step provides variable `var`
[index: provides='{filename}.bam.bai']
input: f"{filename}.bam"
run: expand=True
   echo "Generating {_output}"
   touch {_output}

[call: provides='{filename}.vcf']
input:   f"{filename}.bam"
depends: f"{_input}.bai"
run: expand=True
   echo "Calling variants from {_input} with {_depends} to {_output}"
   touch {_output}

It looks like we will need to use PIL to resize the imported images to the largest size to properly generate a gif.

Growing DAG:

strict digraph "8d66aa143009a990" {
"call ['test.vcf']";
}
strict digraph "8d66aa143009a990_1" {
"call ['test.vcf']" [color=green];
}
strict digraph "8d66aa143009a990_2" {
"call ['test.vcf']" [color=green];
}
strict digraph "8d66aa143009a990_3" {
"call ['test.vcf']" [color=green];
"index ['test.bam.bai']";
"index ['test.bam.bai']" -> "call ['test.vcf']";
}
strict digraph "8d66aa143009a990_4" {
"call ['test.vcf']" [color=green];
"index ['test.bam.bai']" [color=green];
"index ['test.bam.bai']" -> "call ['test.vcf']";
}
strict digraph "8d66aa143009a990_5" {
"call ['test.vcf']" [color=green];
"index ['test.bam.bai']" [color=blue];
"index ['test.bam.bai']" -> "call ['test.vcf']";
}
strict digraph "8d66aa143009a990_6" {
"call ['test.vcf']" [color=green];
"index ['test.bam.bai']" [color=blue];
"index ['test.bam.bai']" -> "call ['test.vcf']";
}
strict digraph "8d66aa143009a990_7" {
"call ['test.vcf']" [color=blue];
"index ['test.bam.bai']" [color=blue];
"index ['test.bam.bai']" -> "call ['test.vcf']";
}

About this issue

  • Original URL
  • State: closed
  • Created 6 years ago
  • Reactions: 1
  • Comments: 19 (19 by maintainers)

Commits related to this issue

Most upvoted comments

Great. Fix the remaining style problem I mentioned and you should be done. ㊗️

You can try fill='0xFFFFFF' something like that.