text: user1695: I have a reference sequence of amino acids that I compare other sequences to using Bio.pairwise2.align.globalmx of Biopython package (one to many compare - one by one [is there a better way?])
  It's works fine but only returns strings of the alignment with very little metadata.
  Now I want to extract the indices of the amino acids that are different than the reference sequence and plot it in some kind of histogram according to protein features:
  For example:
  
  pos 1-36: 3 mutations.
  pos 37-202: 4 mutations.
  pos 203: 1 mutation
  pos 204-660: 0 mutations
  
  Is there any builtin package to do so?
  How can I get the data of diff between 2 sequences in python? I mean which AA changed to which AA and at each position. Bio.pairwise2.align.globalmx returns some data structures of strings (see below) that can be printed but does not contain the locations in a convenient way. 
  LLGHKVNPFKALYNRIDMK-QVEALVEASKEE 
  |||||||||||||||||||||||||||||||| 
  LLGHKVNPFKALYNRIDM-RQVEALVEASKEE
  
  
  user929: In answer to the comments, you can do multiple pair wise alignments and then concatenate them to visualise, if MSA is not the way to go. I have a script you can find here which will draw a graph of the Shannon entropy (uncertainty) in a column. If you create a gapped FASTA alignment for each of your pairs, and concatenate it in to a multifasta, the script should still work with it. Though it may be noisy - best just to try it.
  JalView might be an option for a one-stop GUI tool, but I’m not sure if it’ll require an MSA instead of multiple pair wise.
  
  user2046: You can use AlignBuddy to process alignments in GenBank format, which allows you to keep the metadata. From the command line:
  $: alignbuddy input.gb --generate_alignment mafft | \
     alignbuddy --extract_feature_sequences 'PROT_FEAT_1' | \
     alignbuddy --percent_id
  
  If you want to do a large one-to-many comparison and loop through a bunch of features, I'd recommend importing AlignBuddy into a custom python script and calling the relevant functions directly. You can then collect the relevant data and build a histogram with matplotlib.
  
original_text: 1695: <p>I have a reference sequence of amino acids that I compare other sequences to using <code>Bio.pairwise2.align.globalmx</code> of Biopython package (one to many compare - one by one [is there a better way?])</p>
  
  <p>It's works fine but only returns strings of the alignment with very little metadata.</p>
  
  <p>Now I want to extract the indices of the amino acids that are different than the reference sequence and plot it in some kind of histogram according to protein features:</p>
  
  <p>For example:</p>
  
  <ul>
  <li>pos 1-36: 3 mutations.</li>
  <li>pos 37-202: 4 mutations.</li>
  <li>pos 203: 1 mutation</li>
  <li>pos 204-660: 0 mutations</li>
  </ul>
  
  <p>Is there any builtin package to do so?</p>
  
  <p>How can I get the data of diff between 2 sequences in python? I mean which AA changed to which AA and at each position. <code>Bio.pairwise2.align.globalmx</code> returns some data structures of strings (see below) that can be printed but does not contain the locations in a convenient way. </p>
  
  <pre><code>LLGHKVNPFKALYNRIDMK-QVEALVEASKEE 
  |||||||||||||||||||||||||||||||| 
  LLGHKVNPFKALYNRIDM-RQVEALVEASKEE
  </code></pre>
   929: <p>In answer to the comments, you can do multiple pair wise alignments and then concatenate them to visualise, if MSA is not the way to go. I have a script you can find <a href="https://github.com/jrjhealey/bioinfo-tools/blob/master/Shannon.py" rel="nofollow noreferrer">here</a> which will draw a graph of the Shannon entropy (uncertainty) in a column. If you create a gapped FASTA alignment for each of your pairs, and concatenate it in to a multifasta, the script should still work with it. Though it may be noisy - best just to try it.</p>
  
  <p>JalView might be an option for a one-stop GUI tool, but I’m not sure if it’ll require an MSA instead of multiple pair wise.</p>
   2046: <p>You can use <a href="https://github.com/biologyguy/BuddySuite/wiki/AlignBuddy" rel="nofollow noreferrer">AlignBuddy</a> to process alignments in GenBank format, which allows you to keep the metadata. From the command line:</p>
  
  <pre><code>$: alignbuddy input.gb --generate_alignment mafft | \
     alignbuddy --extract_feature_sequences 'PROT_FEAT_1' | \
     alignbuddy --percent_id
  </code></pre>
  
  <p>If you want to do a large one-to-many comparison and loop through a bunch of features, I'd recommend importing AlignBuddy into a custom python script and calling the relevant functions directly. You can then collect the relevant data and build a histogram with <a href="https://matplotlib.org/devdocs/api/_as_gen/matplotlib.pyplot.hist.html" rel="nofollow noreferrer">matplotlib</a>.</p>
  