[PYTHON] Ein Skript, das Ränder kombiniert, wenn mehrere Diagramme mit Gnuplot auf Kacheln eingefügt werden

Wie der Titel schon sagt, anstelle eines φ (..) Memos.

def margin( n, nhor, nver ) :
    '''
    return top, bottom, left and right margins for the gnuplot command to describe diagrams as tile like arrangement.\n
    inputs: n is the number of diagrams and nhor is the number of column.
    '''
    def margin_fmt( t, b, l, r ) :
        return [ "set tmargin %d" % t, # top
                 "set bmargin %d" % b, # bottom
                 "set lmargin %d" % l, # left
                 "set rmargin %d" % r ]# right
    ret = []
    for i in range(n) :
        t,b,l,r = 0,0,0,0
        # vertical orientation
        if   i / nhor == 0 :
            t = 2
        elif i / nhor == nver - 1 :
            b = 2
            # horizontal orientation
        if   i % nhor == 0 :
            l = 2
        elif i % nhor == nhor - 1 :
            r = 2

        ret.append( margin_fmt( t, b, l, r ) )

    return ret


if __name__ == "__main__" :
    n = 2*6
    nhor = 5
    def get_the_number_of_rows( n, nhor ) :
        if   n % nhor == 0 : nver = n / nhor
        elif n % nhor != 0 : nver = n / nhor + 1
        return nver
    nver = get_the_number_of_rows(n,nhor)

    for _ in margin(n,nhor,nver) :
        print _

Das Ausführungsergebnis ist wie folgt.

['set tmargin 2', 'set bmargin 0', 'set lmargin 2', 'set tmargin 0']
['set tmargin 2', 'set bmargin 0', 'set lmargin 0', 'set tmargin 0']
['set tmargin 2', 'set bmargin 0', 'set lmargin 0', 'set tmargin 0']
['set tmargin 2', 'set bmargin 0', 'set lmargin 0', 'set tmargin 0']
['set tmargin 2', 'set bmargin 0', 'set lmargin 0', 'set tmargin 2']
['set tmargin 0', 'set bmargin 0', 'set lmargin 2', 'set tmargin 0']
['set tmargin 0', 'set bmargin 0', 'set lmargin 0', 'set tmargin 0']
['set tmargin 0', 'set bmargin 0', 'set lmargin 0', 'set tmargin 0']
['set tmargin 0', 'set bmargin 0', 'set lmargin 0', 'set tmargin 0']
['set tmargin 0', 'set bmargin 0', 'set lmargin 0', 'set tmargin 2']
['set tmargin 0', 'set bmargin 2', 'set lmargin 2', 'set tmargin 0']
['set tmargin 0', 'set bmargin 2', 'set lmargin 0', 'set tmargin 0']

Recommended Posts

Ein Skript, das Ränder kombiniert, wenn mehrere Diagramme mit Gnuplot auf Kacheln eingefügt werden
Ein Skript, das mehrere Seiten einer PDF-Datei zu einer Seite ohne Ränder kombiniert
Ein Skript, das den registrierten Server anpingt und eine bestimmte Anzahl von E-Mails mit Google Mail sendet, wenn dies fehlschlägt
Wenn ich mit matplotlib eine große Anzahl von Diagrammen generiere, möchte ich das Diagramm nicht auf dem Bildschirm anzeigen (Jupyter-Umgebung).
Eine Geschichte, bei der es mir schwer fiel, Grafiken mit matplotlib anzuzeigen
Ein Python-Skript, das die Anzahl der Jobs für eine bestimmte Bedingung von Indeed.com abruft
Ein Skript, das Stresstests entsprechend der Anzahl der CPU-Kerne durchführen kann
[Shell Art] Nur wenn es ein Vielfaches von 3 ist und eine Zahl mit 3 dumm wird
Ein Tool zum Verfolgen von Postern mit einer großen Anzahl von Likes auf Instagram [25 Minuten bis 1 Sekunde]
[Python] Ein Programm, das die Anzahl der Täler zählt
Ein Skript, das eine Momentaufnahme eines EBS-Volumes erstellt
Was ist in dieser Variablen (wenn das Python-Skript ausgeführt wird)?
Ein Skript, das eine Liste der Benutzer des SoftLayer-Portals ausgibt
Skript zum Ändern der Klanglänge mit REAPER
Ein Server, der mit Flasche.py und OpenCV die Anzahl der Personen vor der Kamera zurückgibt
Erstellen Sie mit MeCab mit Discord einen Bot, der nur das Ergebnis der morphologischen Analyse zurückgibt
Zusammenfassung der Punkte, die beim Schreiben eines Programms zu beachten sind, das unter Python 2.5 ausgeführt wird
Über den Inhalt von wscript beim Erstellen einer solchen D-Sprachumgebung mit Waf
Problemumgehung für sys.argv wird nicht übergeben, wenn ein Python-Skript mit nur dem Dateinamen unter Python2.7 unter Windows ausgeführt wird