首页 \ 问答 \ 自执行匿名函数约定[重复](Self-executing anonymous function conventions [duplicate])

自执行匿名函数约定[重复](Self-executing anonymous function conventions [duplicate])

这个问题在这里已经有了答案:

以下是否有任何区别? 他们都以同样的方式工作吗?

我已经看到.call()某些用例但是我从未见过为什么函数调用括号在匿名函数声明之内或之后的解释。

(function() {

}());
 ^^
(function() {

})();
  ^^
(function() {

}).call();

This question already has an answer here:

Is there any difference between the following? Do they all work in the same way?

I've seen certain use-cases for .call() but I've never seen an explanation as to why the function call brackets are either inside or after the anonymous function declaration.

(function() {

}());
 ^^
(function() {

})();
  ^^
(function() {

}).call();

原文:https://stackoverflow.com/questions/27530779
更新时间:2022-06-20 06:06

最满意答案

您可以将矩形添加到一个轴,而不是创建这么多轴,这里是代码:

import math
import numpy as np
from pylab import *
from matplotlib import mpl
import matplotlib.pyplot as plt


aa_key = {'ARG':'R', 'HIS':'H', 'LYS':'K', 'ASP':'D', 'GLU':'E', 'SER':'S', 'THR':'T', 'ASN':'N', 'GLN':'Q', 'CYS':'C', 'SEC':'C', 'GLY':'G', 'PRO':'P', 'ALA':'A', 'VAL':'V', 'ILE':'I', 'LEU':'L', 'MET':'M', 'PHE':'F', 'TYR':'Y', 'TRP':'W'}


avg = [93.89, 69.34, 62.14, 33.65, 59.14, 41.73, 22.27, 0.81, 43.57, 5.12, 0.06, 32.58, 18.07, 77.43, 38.97, 83.38, 31.26, 75.33, 68.95, 142.75, 19.71, 0.16, 57.19, 59.74, 0.2, 27.25, 125.09, 116.5, 7.9, 7.49, 131.04, 64.21, 18.45, 62.13, 51.68, 96.93, 80.49, 35.64, 153.67, 28.97, 117.85, 67.19, 4.77, 86.98, 40.65, 56.09, 28.04, 97.77, 25.68, 0.0, 21.36, 47.02, 0.0, 37.21, 66.44, 4.63, 5.51, 43.05, 42.99, 125.41, 100.06, 91.02, 59.16, 32.02, 63.1, 0.58, 5.66, 54.43, 40.13, 67.42, 74.4, 76.45, 105.18, 68.41, 75.86, 74.01, 103.7, 117.79, 90.08, 139.55, 89.3, 136.44, 104.58, 105.68, 42.46, 91.42, 35.22, 93.86, 48.37, 120.37, 66.23, 50.54, 64.71, 41.54, 71.54, 49.17, 60.97, 85.65, 111.92, 51.99, 53.2, 113.7, 126.62, 38.5, 102.27, 116.62, 60.34, 131.57, 78.68, 46.47, 120.32, 90.04, 122.09, 126.92, 72.98, 65.15, 82.23, 20.38, 50.95, 39.32, 20.96, 75.01, 14.44, 88.34, 1.94, 51.8, 2.06, 90.28, 3.36, 64.76, 31.06, 0.51, 29.15, 87.07, 84.27, 65.24, 128.51, 38.39, 94.71, 16.21, 85.0, 31.2, 59.57, 6.18, 33.06, 33.73, 60.79, 61.36, 95.3, 197.35, 26.78, 112.83, 64.85, 131.5, 97.56, 94.93, 79.31, 95.74, 60.12, 89.47, 19.11, 87.26, 16.72, 110.99, 1.96, 33.8, 18.2, 21.86, 13.52, 24.27, 62.86, 31.47, 39.23, 80.43, 38.0, 85.39, 48.59, 136.98, 35.9, 45.6, 4.45, 17.14, 70.42, 34.51, 124.57, 116.16, 66.84, 23.42, 109.71, 58.46, 6.64, 11.81, 0.2, 43.98, 0.2, 15.75, 2.59, 47.25, 11.7, 30.86, 81.7, 30.13, 104.47, 69.54, 7.08, 67.92, 56.72, 63.09, 47.24, 45.87, 23.58, 0.05, 41.5, 3.43, 72.93, 5.42, 60.21, 1.23, 20.09, 1.81, 39.74, 47.41, 0.08, 3.54, 67.77, 19.85, 26.79, 124.72, 33.09, 78.66, 0.99, 55.68, 13.74, 16.07, 119.38, 93.24, 64.98, 43.75, 107.65, 14.95, 69.54, 3.25, 68.41, 56.43, 16.03, 4.43, 61.51, 24.86, 46.78, 43.31, 87.59, 24.02, 108.74, 15.55, 128.87, 35.05, 31.09, 3.57, 6.79, 40.17, 23.66, 116.78, 131.23, 81.16, 58.18, 3.68, 13.18, 0.0, 28.06, 0.0, 25.68, 3.37, 51.95, 1.15, 24.84, 4.6, 22.33, 33.47, 108.62, 16.1, 49.53, 135.2, 71.43, 5.79, 15.91, 48.61, 13.73, 9.4, 87.11, 63.19, 7.91, 21.25, 94.15, 45.86, 26.36, 80.05, 105.57, 52.3, 51.13, 56.83, 113.51, 92.92, 67.0, 148.45, 35.13, 114.23, 108.02, 94.94, 68.44, 62.22, 31.15, 60.04, 38.47, 22.3, 0.78, 39.35, 4.7, 0.09, 28.1, 17.58, 73.04, 37.55, 83.03, 31.78, 75.43, 69.08, 142.08, 19.87, 0.12, 57.8, 56.07, 0.33, 27.34, 124.44, 98.74, 6.57, 7.63, 126.51, 54.26, 16.13, 62.16, 51.03, 96.26, 78.31, 33.71, 142.46, 25.05, 101.93, 59.35, 5.0, 82.65, 36.26, 52.16, 27.37, 96.5, 24.5, 0.0, 21.25, 46.08, 0.0, 37.11, 62.57, 4.14, 5.19, 40.52, 38.78, 122.3, 97.2, 87.08, 57.43, 31.35, 61.98, 0.47, 5.45, 52.48, 41.73, 61.9, 73.38, 76.32, 104.43, 69.92, 78.78, 76.66, 107.05, 121.75, 91.06, 137.56, 91.2, 135.56, 107.81, 103.62, 41.7, 91.29, 35.24, 95.06, 48.72, 120.38, 65.02, 51.42, 63.83, 42.03, 72.09, 46.49, 58.56, 88.6, 111.84, 51.98, 53.78, 113.33, 126.69, 39.08, 101.86, 118.26, 59.34, 131.83, 79.09, 46.05, 119.72, 88.5, 121.97, 124.3, 72.72, 64.42, 83.82, 21.05, 52.81, 39.94, 21.72, 74.56, 12.92, 83.91, 1.73, 50.29, 1.86, 90.79, 3.81, 63.99, 31.36, 0.57, 29.63, 84.77, 89.53, 63.56, 125.84, 35.8, 92.01, 15.26, 83.0, 30.76, 59.25, 6.29, 34.43, 33.28, 62.53, 61.09, 95.55, 196.45, 27.62, 113.44, 63.2, 129.38, 94.13, 92.39, 78.32, 91.58, 60.28, 89.43, 19.21, 88.07, 16.92, 114.43, 1.85, 41.76, 18.49, 24.06, 14.87, 26.1, 62.6, 33.32, 47.49, 87.78, 43.66, 89.01, 50.82, 137.19, 36.07, 45.04, 4.74, 17.27, 70.76, 34.06, 122.94, 115.74, 67.75, 22.31, 109.71, 58.98, 6.2, 11.94, 0.17, 44.87, 0.2, 13.79, 2.98, 45.03, 10.99, 29.79, 79.91, 29.46, 100.54, 66.28, 6.74, 68.25, 56.62, 70.73, 50.56, 58.69, 26.22, 0.2, 42.1, 2.29, 65.71, 5.29, 54.8, 0.74, 17.54, 1.47, 28.1, 38.62, 0.3, 4.99, 67.47, 18.73, 25.92, 125.97, 26.34, 60.35, 0.94, 52.67, 13.45, 15.84, 117.19, 92.53, 62.5, 43.79, 106.85, 16.62, 71.9, 2.93, 68.08, 71.72, 10.62, 4.19, 46.87, 24.12, 47.09, 42.94, 92.39, 26.66, 109.61, 13.34, 129.23, 34.47, 31.0, 3.22, 7.69, 42.03, 28.05, 149.01, 156.76, 92.83, 57.73, 3.86, 14.9, 0.0, 29.23, 0.03, 25.92, 3.87, 45.65, 1.09, 20.81, 3.66, 27.06, 28.97, 94.28, 12.82, 63.89, 134.81, 81.96, 10.38, 17.27, 47.6, 23.26, 11.64, 94.27, 71.8, 2.46, 33.86, 93.88, 44.6, 20.61, 80.47, 97.13, 47.26, 50.87, 56.86, 126.64, 84.4, 57.84, 167.2, 37.38, 118.34, 106.89]
aa = ['ALA', 'SER', 'ALA', 'LEU', 'LYS', 'ASP', 'TYR', 'TYR', 'ALA', 'ILE', 'MET', 'GLY', 'VAL', 'LYS', 'PRO', 'THR', 'ASP', 'ASP', 'LEU', 'LYS', 'THR', 'ILE', 'LYS', 'THR', 'ALA', 'TYR', 'ARG', 'ARG', 'LEU', 'ALA', 'ARG', 'LYS', 'TYR', 'HIS', 'PRO', 'ASP', 'VAL', 'SER', 'LYS', 'GLU', 'PRO', 'ASP', 'ALA', 'GLU', 'ALA', 'ARG', 'PHE', 'LYS', 'GLU', 'VAL', 'ALA', 'GLU', 'ALA', 'TRP', 'GLU', 'VAL', 'LEU', 'SER', 'ASP', 'GLU', 'GLN', 'ARG', 'ARG', 'ALA', 'GLU', 'TYR', 'ASP', 'GLN', 'MET', 'TRP', 'GLN', 'HIS', 'ARG', 'ASN', 'ASP', 'PRO', 'GLN', 'PHE', 'ASN', 'ARG', 'GLN', 'PHE', 'HIS', 'HIS', 'GLY', 'ASP', 'GLY', 'GLN', 'SER', 'PHE', 'ASN', 'ALA', 'GLU', 'ASP', 'PHE', 'ASP', 'ASP', 'ILE', 'PHE', 'SER', 'SER', 'ILE', 'PHE', 'GLY', 'GLN', 'HIS', 'ALA', 'ARG', 'GLN', 'SER', 'ARG', 'GLN', 'ARG', 'PRO', 'ALA', 'THR', 'ARG', 'GLY', 'HIS', 'ASP', 'ILE', 'GLU', 'ILE', 'GLU', 'VAL', 'ALA', 'VAL', 'PHE', 'LEU', 'GLU', 'GLU', 'THR', 'LEU', 'THR', 'GLU', 'HIS', 'LYS', 'ARG', 'THR', 'ILE', 'SER', 'TYR', 'ASN', 'LEU', 'PRO', 'VAL', 'TYR', 'ASN', 'ALA', 'PHE', 'GLY', 'MET', 'ILE', 'GLU', 'GLN', 'GLU', 'ILE', 'PRO', 'LYS', 'THR', 'LEU', 'ASN', 'VAL', 'LYS', 'ILE', 'PRO', 'ALA', 'GLY', 'VAL', 'GLY', 'ASN', 'GLY', 'GLN', 'ARG', 'ILE', 'ARG', 'LEU', 'LYS', 'GLY', 'GLN', 'GLY', 'THR', 'PRO', 'GLY', 'GLU', 'ASN', 'GLY', 'GLY', 'PRO', 'ASN', 'GLY', 'ASP', 'LEU', 'TRP', 'LEU', 'VAL', 'ILE', 'HIS', 'ILE', 'ALA', 'PRO', 'HIS', 'PRO', 'LEU', 'PHE', 'ASP', 'ILE', 'VAL', 'GLY', 'GLN', 'ASP', 'LEU', 'GLU', 'ILE', 'VAL', 'VAL', 'PRO', 'VAL', 'SER', 'PRO', 'TRP', 'GLU', 'ALA', 'ALA', 'LEU', 'GLY', 'ALA', 'LYS', 'VAL', 'THR', 'VAL', 'PRO', 'THR', 'LEU', 'LYS', 'GLU', 'SER', 'ILE', 'LEU', 'LEU', 'THR', 'ILE', 'PRO', 'PRO', 'GLY', 'SER', 'GLN', 'ALA', 'GLY', 'GLN', 'ARG', 'LEU', 'ARG', 'VAL', 'LYS', 'GLY', 'LYS', 'GLY', 'LEU', 'VAL', 'SER', 'LYS', 'LYS', 'GLN', 'THR', 'GLY', 'ASP', 'LEU', 'TYR', 'ALA', 'VAL', 'LEU', 'LYS', 'ILE', 'VAL', 'MET', 'PRO', 'PRO', 'LYS', 'PRO', 'ASP', 'GLU', 'ASN', 'THR', 'ALA', 'ALA', 'LEU', 'TRP', 'GLN', 'GLN', 'LEU', 'ALA', 'ASP', 'ALA', 'GLN', 'SER', 'SER', 'PHE', 'ASP', 'PRO', 'ARG', 'LYS', 'ASP', 'TRP', 'GLY', 'LYS', 'ALA', 'ALA', 'SER', 'ALA', 'LEU', 'LYS', 'ASP', 'TYR', 'TYR', 'ALA', 'ILE', 'MET', 'GLY', 'VAL', 'LYS', 'PRO', 'THR', 'ASP', 'ASP', 'LEU', 'LYS', 'THR', 'ILE', 'LYS', 'THR', 'ALA', 'TYR', 'ARG', 'ARG', 'LEU', 'ALA', 'ARG', 'LYS', 'TYR', 'HIS', 'PRO', 'ASP', 'VAL', 'SER', 'LYS', 'GLU', 'PRO', 'ASP', 'ALA', 'GLU', 'ALA', 'ARG', 'PHE', 'LYS', 'GLU', 'VAL', 'ALA', 'GLU', 'ALA', 'TRP', 'GLU', 'VAL', 'LEU', 'SER', 'ASP', 'GLU', 'GLN', 'ARG', 'ARG', 'ALA', 'GLU', 'TYR', 'ASP', 'GLN', 'MET', 'TRP', 'GLN', 'HIS', 'ARG', 'ASN', 'ASP', 'PRO', 'GLN', 'PHE', 'ASN', 'ARG', 'GLN', 'PHE', 'HIS', 'HIS', 'GLY', 'ASP', 'GLY', 'GLN', 'SER', 'PHE', 'ASN', 'ALA', 'GLU', 'ASP', 'PHE', 'ASP', 'ASP', 'ILE', 'PHE', 'SER', 'SER', 'ILE', 'PHE', 'GLY', 'GLN', 'HIS', 'ALA', 'ARG', 'GLN', 'SER', 'ARG', 'GLN', 'ARG', 'PRO', 'ALA', 'THR', 'ARG', 'GLY', 'HIS', 'ASP', 'ILE', 'GLU', 'ILE', 'GLU', 'VAL', 'ALA', 'VAL', 'PHE', 'LEU', 'GLU', 'GLU', 'THR', 'LEU', 'THR', 'GLU', 'HIS', 'LYS', 'ARG', 'THR', 'ILE', 'SER', 'TYR', 'ASN', 'LEU', 'PRO', 'VAL', 'TYR', 'ASN', 'ALA', 'PHE', 'GLY', 'MET', 'ILE', 'GLU', 'GLN', 'GLU', 'ILE', 'PRO', 'LYS', 'THR', 'LEU', 'ASN', 'VAL', 'LYS', 'ILE', 'PRO', 'ALA', 'GLY', 'VAL', 'GLY', 'ASN', 'GLY', 'GLN', 'ARG', 'ILE', 'ARG', 'LEU', 'LYS', 'GLY', 'GLN', 'GLY', 'THR', 'PRO', 'GLY', 'GLU', 'ASN', 'GLY', 'GLY', 'PRO', 'ASN', 'GLY', 'ASP', 'LEU', 'TRP', 'LEU', 'VAL', 'ILE', 'HIS', 'ILE', 'ALA', 'PRO', 'HIS', 'PRO', 'LEU', 'PHE', 'ASP', 'ILE', 'VAL', 'GLY', 'GLN', 'ASP', 'LEU', 'GLU', 'ILE', 'VAL', 'VAL', 'PRO', 'VAL', 'SER', 'PRO', 'TRP', 'GLU', 'ALA', 'ALA', 'LEU', 'GLY', 'ALA', 'LYS', 'VAL', 'THR', 'VAL', 'PRO', 'THR', 'LEU', 'LYS', 'GLU', 'SER', 'ILE', 'LEU', 'LEU', 'THR', 'ILE', 'PRO', 'PRO', 'GLY', 'SER', 'GLN', 'ALA', 'GLY', 'GLN', 'ARG', 'LEU', 'ARG', 'VAL', 'LYS', 'GLY', 'LYS', 'GLY', 'LEU', 'VAL', 'SER', 'LYS', 'LYS', 'GLN', 'THR', 'GLY', 'ASP', 'LEU', 'TYR', 'ALA', 'VAL', 'LEU', 'LYS', 'ILE', 'VAL', 'MET', 'PRO', 'PRO', 'LYS', 'PRO', 'ASP', 'GLU', 'ASN', 'THR', 'ALA', 'ALA', 'LEU', 'TRP', 'GLN', 'GLN', 'LEU', 'ALA', 'ASP', 'ALA', 'GLN', 'SER', 'SER', 'PHE', 'ASP', 'PRO', 'ARG', 'LYS', 'ASP', 'TRP', 'GLY', 'LYS', 'ALA']
colours = ['#FFFFFF','#CCFFFF','#99FFFF','#00CCFF','#0099FF','#0066FF','#0033FF','#0000CC','#000066']

high_val = max(avg)
boundaries = np.linspace(0, np.max(avg), 10)[1:]
rows = math.ceil(len(aa)/40.0)
list_numbers = set(range(1, len(aa), 10))

fig = plt.figure(figsize=(10, 10), facecolor="white")
ax = plt.subplot(111)
ax.set_axis_off()
color_index = np.searchsorted(boundaries, avg)
x, y = 0, -1
for i in xrange(len(aa)):
    rect = plt.Rectangle((x, y), 1, 1, facecolor=colours[color_index[i]])
    ax.add_artist(rect)
    ax.text(x+0.5, y+0.5, aa_key[aa[i]], ha="center", va="center", color="white" if color_index[i]==8 else "black")
    if i+1 in list_numbers:
        ax.text(x+0.5, y+1.6, "%d" % (i+1), ha="center", va="center")
    x += 1
    if x == 40:
        y -= 3.0
        x = 0
ax.set_xlim(-1, 41)
ax.set_ylim(y-3, 3)

a = np.linspace(0, high_val, 9)
a = np.vstack((a,a))
cmap = mpl.colors.ListedColormap(['#FFFFFF','#CCFFFF','#99FFFF','#00CCFF','#0099FF','#0066FF','#0033FF','#0000CC','#000066'])  
im = imshow(a, aspect='auto', cmap=plt.get_cmap(cmap), origin='lower')       
im.set_visible(False)  
colorbar()
plt.show()

结果是:

在此处输入图像描述


Instead of creating so many axes, you can add Rectangles to one axes, here is the code:

import math
import numpy as np
from pylab import *
from matplotlib import mpl
import matplotlib.pyplot as plt


aa_key = {'ARG':'R', 'HIS':'H', 'LYS':'K', 'ASP':'D', 'GLU':'E', 'SER':'S', 'THR':'T', 'ASN':'N', 'GLN':'Q', 'CYS':'C', 'SEC':'C', 'GLY':'G', 'PRO':'P', 'ALA':'A', 'VAL':'V', 'ILE':'I', 'LEU':'L', 'MET':'M', 'PHE':'F', 'TYR':'Y', 'TRP':'W'}


avg = [93.89, 69.34, 62.14, 33.65, 59.14, 41.73, 22.27, 0.81, 43.57, 5.12, 0.06, 32.58, 18.07, 77.43, 38.97, 83.38, 31.26, 75.33, 68.95, 142.75, 19.71, 0.16, 57.19, 59.74, 0.2, 27.25, 125.09, 116.5, 7.9, 7.49, 131.04, 64.21, 18.45, 62.13, 51.68, 96.93, 80.49, 35.64, 153.67, 28.97, 117.85, 67.19, 4.77, 86.98, 40.65, 56.09, 28.04, 97.77, 25.68, 0.0, 21.36, 47.02, 0.0, 37.21, 66.44, 4.63, 5.51, 43.05, 42.99, 125.41, 100.06, 91.02, 59.16, 32.02, 63.1, 0.58, 5.66, 54.43, 40.13, 67.42, 74.4, 76.45, 105.18, 68.41, 75.86, 74.01, 103.7, 117.79, 90.08, 139.55, 89.3, 136.44, 104.58, 105.68, 42.46, 91.42, 35.22, 93.86, 48.37, 120.37, 66.23, 50.54, 64.71, 41.54, 71.54, 49.17, 60.97, 85.65, 111.92, 51.99, 53.2, 113.7, 126.62, 38.5, 102.27, 116.62, 60.34, 131.57, 78.68, 46.47, 120.32, 90.04, 122.09, 126.92, 72.98, 65.15, 82.23, 20.38, 50.95, 39.32, 20.96, 75.01, 14.44, 88.34, 1.94, 51.8, 2.06, 90.28, 3.36, 64.76, 31.06, 0.51, 29.15, 87.07, 84.27, 65.24, 128.51, 38.39, 94.71, 16.21, 85.0, 31.2, 59.57, 6.18, 33.06, 33.73, 60.79, 61.36, 95.3, 197.35, 26.78, 112.83, 64.85, 131.5, 97.56, 94.93, 79.31, 95.74, 60.12, 89.47, 19.11, 87.26, 16.72, 110.99, 1.96, 33.8, 18.2, 21.86, 13.52, 24.27, 62.86, 31.47, 39.23, 80.43, 38.0, 85.39, 48.59, 136.98, 35.9, 45.6, 4.45, 17.14, 70.42, 34.51, 124.57, 116.16, 66.84, 23.42, 109.71, 58.46, 6.64, 11.81, 0.2, 43.98, 0.2, 15.75, 2.59, 47.25, 11.7, 30.86, 81.7, 30.13, 104.47, 69.54, 7.08, 67.92, 56.72, 63.09, 47.24, 45.87, 23.58, 0.05, 41.5, 3.43, 72.93, 5.42, 60.21, 1.23, 20.09, 1.81, 39.74, 47.41, 0.08, 3.54, 67.77, 19.85, 26.79, 124.72, 33.09, 78.66, 0.99, 55.68, 13.74, 16.07, 119.38, 93.24, 64.98, 43.75, 107.65, 14.95, 69.54, 3.25, 68.41, 56.43, 16.03, 4.43, 61.51, 24.86, 46.78, 43.31, 87.59, 24.02, 108.74, 15.55, 128.87, 35.05, 31.09, 3.57, 6.79, 40.17, 23.66, 116.78, 131.23, 81.16, 58.18, 3.68, 13.18, 0.0, 28.06, 0.0, 25.68, 3.37, 51.95, 1.15, 24.84, 4.6, 22.33, 33.47, 108.62, 16.1, 49.53, 135.2, 71.43, 5.79, 15.91, 48.61, 13.73, 9.4, 87.11, 63.19, 7.91, 21.25, 94.15, 45.86, 26.36, 80.05, 105.57, 52.3, 51.13, 56.83, 113.51, 92.92, 67.0, 148.45, 35.13, 114.23, 108.02, 94.94, 68.44, 62.22, 31.15, 60.04, 38.47, 22.3, 0.78, 39.35, 4.7, 0.09, 28.1, 17.58, 73.04, 37.55, 83.03, 31.78, 75.43, 69.08, 142.08, 19.87, 0.12, 57.8, 56.07, 0.33, 27.34, 124.44, 98.74, 6.57, 7.63, 126.51, 54.26, 16.13, 62.16, 51.03, 96.26, 78.31, 33.71, 142.46, 25.05, 101.93, 59.35, 5.0, 82.65, 36.26, 52.16, 27.37, 96.5, 24.5, 0.0, 21.25, 46.08, 0.0, 37.11, 62.57, 4.14, 5.19, 40.52, 38.78, 122.3, 97.2, 87.08, 57.43, 31.35, 61.98, 0.47, 5.45, 52.48, 41.73, 61.9, 73.38, 76.32, 104.43, 69.92, 78.78, 76.66, 107.05, 121.75, 91.06, 137.56, 91.2, 135.56, 107.81, 103.62, 41.7, 91.29, 35.24, 95.06, 48.72, 120.38, 65.02, 51.42, 63.83, 42.03, 72.09, 46.49, 58.56, 88.6, 111.84, 51.98, 53.78, 113.33, 126.69, 39.08, 101.86, 118.26, 59.34, 131.83, 79.09, 46.05, 119.72, 88.5, 121.97, 124.3, 72.72, 64.42, 83.82, 21.05, 52.81, 39.94, 21.72, 74.56, 12.92, 83.91, 1.73, 50.29, 1.86, 90.79, 3.81, 63.99, 31.36, 0.57, 29.63, 84.77, 89.53, 63.56, 125.84, 35.8, 92.01, 15.26, 83.0, 30.76, 59.25, 6.29, 34.43, 33.28, 62.53, 61.09, 95.55, 196.45, 27.62, 113.44, 63.2, 129.38, 94.13, 92.39, 78.32, 91.58, 60.28, 89.43, 19.21, 88.07, 16.92, 114.43, 1.85, 41.76, 18.49, 24.06, 14.87, 26.1, 62.6, 33.32, 47.49, 87.78, 43.66, 89.01, 50.82, 137.19, 36.07, 45.04, 4.74, 17.27, 70.76, 34.06, 122.94, 115.74, 67.75, 22.31, 109.71, 58.98, 6.2, 11.94, 0.17, 44.87, 0.2, 13.79, 2.98, 45.03, 10.99, 29.79, 79.91, 29.46, 100.54, 66.28, 6.74, 68.25, 56.62, 70.73, 50.56, 58.69, 26.22, 0.2, 42.1, 2.29, 65.71, 5.29, 54.8, 0.74, 17.54, 1.47, 28.1, 38.62, 0.3, 4.99, 67.47, 18.73, 25.92, 125.97, 26.34, 60.35, 0.94, 52.67, 13.45, 15.84, 117.19, 92.53, 62.5, 43.79, 106.85, 16.62, 71.9, 2.93, 68.08, 71.72, 10.62, 4.19, 46.87, 24.12, 47.09, 42.94, 92.39, 26.66, 109.61, 13.34, 129.23, 34.47, 31.0, 3.22, 7.69, 42.03, 28.05, 149.01, 156.76, 92.83, 57.73, 3.86, 14.9, 0.0, 29.23, 0.03, 25.92, 3.87, 45.65, 1.09, 20.81, 3.66, 27.06, 28.97, 94.28, 12.82, 63.89, 134.81, 81.96, 10.38, 17.27, 47.6, 23.26, 11.64, 94.27, 71.8, 2.46, 33.86, 93.88, 44.6, 20.61, 80.47, 97.13, 47.26, 50.87, 56.86, 126.64, 84.4, 57.84, 167.2, 37.38, 118.34, 106.89]
aa = ['ALA', 'SER', 'ALA', 'LEU', 'LYS', 'ASP', 'TYR', 'TYR', 'ALA', 'ILE', 'MET', 'GLY', 'VAL', 'LYS', 'PRO', 'THR', 'ASP', 'ASP', 'LEU', 'LYS', 'THR', 'ILE', 'LYS', 'THR', 'ALA', 'TYR', 'ARG', 'ARG', 'LEU', 'ALA', 'ARG', 'LYS', 'TYR', 'HIS', 'PRO', 'ASP', 'VAL', 'SER', 'LYS', 'GLU', 'PRO', 'ASP', 'ALA', 'GLU', 'ALA', 'ARG', 'PHE', 'LYS', 'GLU', 'VAL', 'ALA', 'GLU', 'ALA', 'TRP', 'GLU', 'VAL', 'LEU', 'SER', 'ASP', 'GLU', 'GLN', 'ARG', 'ARG', 'ALA', 'GLU', 'TYR', 'ASP', 'GLN', 'MET', 'TRP', 'GLN', 'HIS', 'ARG', 'ASN', 'ASP', 'PRO', 'GLN', 'PHE', 'ASN', 'ARG', 'GLN', 'PHE', 'HIS', 'HIS', 'GLY', 'ASP', 'GLY', 'GLN', 'SER', 'PHE', 'ASN', 'ALA', 'GLU', 'ASP', 'PHE', 'ASP', 'ASP', 'ILE', 'PHE', 'SER', 'SER', 'ILE', 'PHE', 'GLY', 'GLN', 'HIS', 'ALA', 'ARG', 'GLN', 'SER', 'ARG', 'GLN', 'ARG', 'PRO', 'ALA', 'THR', 'ARG', 'GLY', 'HIS', 'ASP', 'ILE', 'GLU', 'ILE', 'GLU', 'VAL', 'ALA', 'VAL', 'PHE', 'LEU', 'GLU', 'GLU', 'THR', 'LEU', 'THR', 'GLU', 'HIS', 'LYS', 'ARG', 'THR', 'ILE', 'SER', 'TYR', 'ASN', 'LEU', 'PRO', 'VAL', 'TYR', 'ASN', 'ALA', 'PHE', 'GLY', 'MET', 'ILE', 'GLU', 'GLN', 'GLU', 'ILE', 'PRO', 'LYS', 'THR', 'LEU', 'ASN', 'VAL', 'LYS', 'ILE', 'PRO', 'ALA', 'GLY', 'VAL', 'GLY', 'ASN', 'GLY', 'GLN', 'ARG', 'ILE', 'ARG', 'LEU', 'LYS', 'GLY', 'GLN', 'GLY', 'THR', 'PRO', 'GLY', 'GLU', 'ASN', 'GLY', 'GLY', 'PRO', 'ASN', 'GLY', 'ASP', 'LEU', 'TRP', 'LEU', 'VAL', 'ILE', 'HIS', 'ILE', 'ALA', 'PRO', 'HIS', 'PRO', 'LEU', 'PHE', 'ASP', 'ILE', 'VAL', 'GLY', 'GLN', 'ASP', 'LEU', 'GLU', 'ILE', 'VAL', 'VAL', 'PRO', 'VAL', 'SER', 'PRO', 'TRP', 'GLU', 'ALA', 'ALA', 'LEU', 'GLY', 'ALA', 'LYS', 'VAL', 'THR', 'VAL', 'PRO', 'THR', 'LEU', 'LYS', 'GLU', 'SER', 'ILE', 'LEU', 'LEU', 'THR', 'ILE', 'PRO', 'PRO', 'GLY', 'SER', 'GLN', 'ALA', 'GLY', 'GLN', 'ARG', 'LEU', 'ARG', 'VAL', 'LYS', 'GLY', 'LYS', 'GLY', 'LEU', 'VAL', 'SER', 'LYS', 'LYS', 'GLN', 'THR', 'GLY', 'ASP', 'LEU', 'TYR', 'ALA', 'VAL', 'LEU', 'LYS', 'ILE', 'VAL', 'MET', 'PRO', 'PRO', 'LYS', 'PRO', 'ASP', 'GLU', 'ASN', 'THR', 'ALA', 'ALA', 'LEU', 'TRP', 'GLN', 'GLN', 'LEU', 'ALA', 'ASP', 'ALA', 'GLN', 'SER', 'SER', 'PHE', 'ASP', 'PRO', 'ARG', 'LYS', 'ASP', 'TRP', 'GLY', 'LYS', 'ALA', 'ALA', 'SER', 'ALA', 'LEU', 'LYS', 'ASP', 'TYR', 'TYR', 'ALA', 'ILE', 'MET', 'GLY', 'VAL', 'LYS', 'PRO', 'THR', 'ASP', 'ASP', 'LEU', 'LYS', 'THR', 'ILE', 'LYS', 'THR', 'ALA', 'TYR', 'ARG', 'ARG', 'LEU', 'ALA', 'ARG', 'LYS', 'TYR', 'HIS', 'PRO', 'ASP', 'VAL', 'SER', 'LYS', 'GLU', 'PRO', 'ASP', 'ALA', 'GLU', 'ALA', 'ARG', 'PHE', 'LYS', 'GLU', 'VAL', 'ALA', 'GLU', 'ALA', 'TRP', 'GLU', 'VAL', 'LEU', 'SER', 'ASP', 'GLU', 'GLN', 'ARG', 'ARG', 'ALA', 'GLU', 'TYR', 'ASP', 'GLN', 'MET', 'TRP', 'GLN', 'HIS', 'ARG', 'ASN', 'ASP', 'PRO', 'GLN', 'PHE', 'ASN', 'ARG', 'GLN', 'PHE', 'HIS', 'HIS', 'GLY', 'ASP', 'GLY', 'GLN', 'SER', 'PHE', 'ASN', 'ALA', 'GLU', 'ASP', 'PHE', 'ASP', 'ASP', 'ILE', 'PHE', 'SER', 'SER', 'ILE', 'PHE', 'GLY', 'GLN', 'HIS', 'ALA', 'ARG', 'GLN', 'SER', 'ARG', 'GLN', 'ARG', 'PRO', 'ALA', 'THR', 'ARG', 'GLY', 'HIS', 'ASP', 'ILE', 'GLU', 'ILE', 'GLU', 'VAL', 'ALA', 'VAL', 'PHE', 'LEU', 'GLU', 'GLU', 'THR', 'LEU', 'THR', 'GLU', 'HIS', 'LYS', 'ARG', 'THR', 'ILE', 'SER', 'TYR', 'ASN', 'LEU', 'PRO', 'VAL', 'TYR', 'ASN', 'ALA', 'PHE', 'GLY', 'MET', 'ILE', 'GLU', 'GLN', 'GLU', 'ILE', 'PRO', 'LYS', 'THR', 'LEU', 'ASN', 'VAL', 'LYS', 'ILE', 'PRO', 'ALA', 'GLY', 'VAL', 'GLY', 'ASN', 'GLY', 'GLN', 'ARG', 'ILE', 'ARG', 'LEU', 'LYS', 'GLY', 'GLN', 'GLY', 'THR', 'PRO', 'GLY', 'GLU', 'ASN', 'GLY', 'GLY', 'PRO', 'ASN', 'GLY', 'ASP', 'LEU', 'TRP', 'LEU', 'VAL', 'ILE', 'HIS', 'ILE', 'ALA', 'PRO', 'HIS', 'PRO', 'LEU', 'PHE', 'ASP', 'ILE', 'VAL', 'GLY', 'GLN', 'ASP', 'LEU', 'GLU', 'ILE', 'VAL', 'VAL', 'PRO', 'VAL', 'SER', 'PRO', 'TRP', 'GLU', 'ALA', 'ALA', 'LEU', 'GLY', 'ALA', 'LYS', 'VAL', 'THR', 'VAL', 'PRO', 'THR', 'LEU', 'LYS', 'GLU', 'SER', 'ILE', 'LEU', 'LEU', 'THR', 'ILE', 'PRO', 'PRO', 'GLY', 'SER', 'GLN', 'ALA', 'GLY', 'GLN', 'ARG', 'LEU', 'ARG', 'VAL', 'LYS', 'GLY', 'LYS', 'GLY', 'LEU', 'VAL', 'SER', 'LYS', 'LYS', 'GLN', 'THR', 'GLY', 'ASP', 'LEU', 'TYR', 'ALA', 'VAL', 'LEU', 'LYS', 'ILE', 'VAL', 'MET', 'PRO', 'PRO', 'LYS', 'PRO', 'ASP', 'GLU', 'ASN', 'THR', 'ALA', 'ALA', 'LEU', 'TRP', 'GLN', 'GLN', 'LEU', 'ALA', 'ASP', 'ALA', 'GLN', 'SER', 'SER', 'PHE', 'ASP', 'PRO', 'ARG', 'LYS', 'ASP', 'TRP', 'GLY', 'LYS', 'ALA']
colours = ['#FFFFFF','#CCFFFF','#99FFFF','#00CCFF','#0099FF','#0066FF','#0033FF','#0000CC','#000066']

high_val = max(avg)
boundaries = np.linspace(0, np.max(avg), 10)[1:]
rows = math.ceil(len(aa)/40.0)
list_numbers = set(range(1, len(aa), 10))

fig = plt.figure(figsize=(10, 10), facecolor="white")
ax = plt.subplot(111)
ax.set_axis_off()
color_index = np.searchsorted(boundaries, avg)
x, y = 0, -1
for i in xrange(len(aa)):
    rect = plt.Rectangle((x, y), 1, 1, facecolor=colours[color_index[i]])
    ax.add_artist(rect)
    ax.text(x+0.5, y+0.5, aa_key[aa[i]], ha="center", va="center", color="white" if color_index[i]==8 else "black")
    if i+1 in list_numbers:
        ax.text(x+0.5, y+1.6, "%d" % (i+1), ha="center", va="center")
    x += 1
    if x == 40:
        y -= 3.0
        x = 0
ax.set_xlim(-1, 41)
ax.set_ylim(y-3, 3)

a = np.linspace(0, high_val, 9)
a = np.vstack((a,a))
cmap = mpl.colors.ListedColormap(['#FFFFFF','#CCFFFF','#99FFFF','#00CCFF','#0099FF','#0066FF','#0033FF','#0000CC','#000066'])  
im = imshow(a, aspect='auto', cmap=plt.get_cmap(cmap), origin='lower')       
im.set_visible(False)  
colorbar()
plt.show()

The result is:

enter image description here

相关问答

更多

相关文章

更多

最新问答

更多
  • 您如何使用git diff文件,并将其应用于同一存储库的副本的本地分支?(How do you take a git diff file, and apply it to a local branch that is a copy of the same repository?)
  • 将长浮点值剪切为2个小数点并复制到字符数组(Cut Long Float Value to 2 decimal points and copy to Character Array)
  • OctoberCMS侧边栏不呈现(OctoberCMS Sidebar not rendering)
  • 页面加载后对象是否有资格进行垃圾回收?(Are objects eligible for garbage collection after the page loads?)
  • codeigniter中的语言不能按预期工作(language in codeigniter doesn' t work as expected)
  • 在计算机拍照在哪里进入
  • 使用cin.get()从c ++中的输入流中丢弃不需要的字符(Using cin.get() to discard unwanted characters from the input stream in c++)
  • No for循环将在for循环中运行。(No for loop will run inside for loop. Testing for primes)
  • 单页应用程序:页面重新加载(Single Page Application: page reload)
  • 在循环中选择具有相似模式的列名称(Selecting Column Name With Similar Pattern in a Loop)
  • System.StackOverflow错误(System.StackOverflow error)
  • KnockoutJS未在嵌套模板上应用beforeRemove和afterAdd(KnockoutJS not applying beforeRemove and afterAdd on nested templates)
  • 散列包括方法和/或嵌套属性(Hash include methods and/or nested attributes)
  • android - 如何避免使用Samsung RFS文件系统延迟/冻结?(android - how to avoid lag/freezes with Samsung RFS filesystem?)
  • TensorFlow:基于索引列表创建新张量(TensorFlow: Create a new tensor based on list of indices)
  • 企业安全培训的各项内容
  • 错误:RPC失败;(error: RPC failed; curl transfer closed with outstanding read data remaining)
  • C#类名中允许哪些字符?(What characters are allowed in C# class name?)
  • NumPy:将int64值存储在np.array中并使用dtype float64并将其转换回整数是否安全?(NumPy: Is it safe to store an int64 value in an np.array with dtype float64 and later convert it back to integer?)
  • 注销后如何隐藏导航portlet?(How to hide navigation portlet after logout?)
  • 将多个行和可变行移动到列(moving multiple and variable rows to columns)
  • 提交表单时忽略基础href,而不使用Javascript(ignore base href when submitting form, without using Javascript)
  • 对setOnInfoWindowClickListener的意图(Intent on setOnInfoWindowClickListener)
  • Angular $资源不会改变方法(Angular $resource doesn't change method)
  • 在Angular 5中不是一个函数(is not a function in Angular 5)
  • 如何配置Composite C1以将.m和桌面作为同一站点提供服务(How to configure Composite C1 to serve .m and desktop as the same site)
  • 不适用:悬停在悬停时:在元素之前[复制](Don't apply :hover when hovering on :before element [duplicate])
  • 常见的python rpc和cli接口(Common python rpc and cli interface)
  • Mysql DB单个字段匹配多个其他字段(Mysql DB single field matching to multiple other fields)
  • 产品页面上的Magento Up出售对齐问题(Magento Up sell alignment issue on the products page)