質問

Pythonで簡単なインフォグラフィックを作成したいと考えています。Matplotlib には多くの機能があるようですが、私の単純なヒートマップ グリッドの例をカバーするものは何もありません。

インフォグラフィックは、内部に 0 から 1 の範囲の数字が入った単純な 5 x 5 グリッドです。グリッドの正方形は、0=白、1=青、0.5 は淡い青で色付けされます。

Matplotlib を使用できる可能性がありますが、これを生成するための洞察を提供する例を見つけたり組み合わせたりすることができませんでした。

洞察、サンプルコード、またはライブラリの方向性があれば本当に役立ちます

よろしくマット

役に立ちましたか?

解決

それはあなたがそれを持っていたら、グラフで何をする必要があるかによって異なり、 matplotlibのを可能にあなたが対話的にどちらかのベクトル、PDFまたはビットマップ形式で保存し、そしてより多くの、画面上のグラフを表示します。

あなたはこのフレームワークを選択した場合、imshowは何が必要でしょう、ここでは一例です。

# Just some data to test:
from random import gauss
a = [[gauss(0, 10) for i in xrange(0, 5)] for j in xrange(0,5)]

from pylab import * # or just launch "IPython -pylab" from the command line

# We create a custom colormap:
myblue = cm.colors.LinearSegmentedColormap("myblue", {
    'red':   [(0, 1, 1), (1, 0, 0)], 
    'green': [(0, 1, 1), (1, 0, 0)],
    'blue':  [(0, 1, 1), (1, 1, 1)]})

# Plotting the graph:
imshow(a, cmap=myblue)

カラーマップの詳細についてはこのリンクをチェックしますに、ここでは、関数imshow のリンクあり - あるいは単にhelp(colors.LinearSegmentedColormap)help(imshow)を使用する

http://img522.imageshack.us/img522/6230/bluep .PNGする

(、あなたは、グリッドを追加するようにフィルタリングして変更することができ、これは標準オプションと結果であることに注意してください)。

<時間>

編集

  

しかし、私は表示するために探しています   グリッド内の数字

それをシンプルに保つために:

for i in xrange(0,5):
    for j in xrange(0,5):
        text(i, j,
             "{0:5.2f}".format(a[i][j]),
             horizontalalignment="center",
             verticalalignment="center")
scroll top