Giter VIP home page Giter VIP logo

Comments (4)

peterjc avatar peterjc commented on September 13, 2024

I don't understand what you are asking for, and this sort of open question might be better suited to the mailing list.

@widdowquinn - Any comment Leighton?

from biopython.

Phlya avatar Phlya commented on September 13, 2024

Oh, I am sorry, I didn't know about the mailing list, otherwise I would've started asking all these questions there.

I looked a bit at the code and found a parameter "centre", which, as I thought, could help to move the x-axis to zero-level or even any other level. But I understood, why nothing is said about it in the documentation - it influences the y-axis scale. The specified value actually becomes the centre of y-axis... But maybe it is possible to easily adjust the code, so it would work? The code is quiet complicated (or I don't know Python that well), so it is difficult for me to understand it.

It seems, that the drawing order is defined in GenomeDiagram/_LinearDrawer in lines 302-304 and GenomeDiagram/_CircularDrawer in lines 295-298: order of elements in these lists corresponds with there future order of drawing. BTW, I think this list should be present in the documentation, as it is a useful knowledge. And I think there should be a mechanism to adjust the drawing order when creating diagrams.

from biopython.

widdowquinn avatar widdowquinn commented on September 13, 2024

In terms of 'layers' - the tracks hold 'sets' (FeatureSet or GraphSet objects), which are rendered in the Z-order they are provided, and within a GraphSet, graphs are rendered in the order they are added to the GraphSet (I think this is stated in the original documentation: http://biopython.org/DIST/docs/GenomeDiagram/userguide.pdf) so it is possible to structure your image to take advantage of this. You can adjust the order when constructing your figure - by providing graphs/sets in the order you want - back to front (just like in Powerpoint/Illustrator, etc. - unlike those packages, this is intended to be programmatic, not interactive rendering).

You can also put the scale line on a separate track by itself, with its own height, so it's not such an obvious gap, if you want the horizontal scale not to overlay on the data. You can then choose to place this track 'below' the track that contains the data.

from biopython.

Phlya avatar Phlya commented on September 13, 2024

So you suggest one should create an "extra" track with no data, but with scale, and for all other track to have no scale. And then place that scaling track the first one to all the levels, and then add all others?

from biopython.

Related Issues (20)

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.