Häufig gestellte Fragen


Frequently Asked Questions
Copyright © By pyngl.ucar.edu
For original English text, go to: http://www.pyngl.ucar.edu/FAQ/

Frequently Asked Questions unten aufgeführten, müssen Sie einige grundlegende Kenntnisse über PyNGL, und wissen, wie man Websites mit PyNGL erstellen.

Allgemeine Fragen

  1. Wie kann ich das Standard NCGM / PostScript / PDF-Datei Namen von etwas anderem?
  2. Wie richte ich meine PyNGL Skript, so dass es eine Ressource-Datei verwendet
  3. Wie kann ich alle meine Schriften, die gleiche Schriftart
  4. Wie kann ich Zugang zu Sonderzeichen wie griechische Zeichen
  5. Kann ich auf PostScript-Fonts in PyNGL Skript
  6. Wie bekomme ich eine Umgebungsvariable in PyNGL
  7. Wie kann ich die Funktion Code der Text in etwas anderes standardmäßig
  8. meine Texte in meinen Seiten, oder Verunreinigungen in ihnen, oder sie nicht vollständig reflektiert. Was ist das Problem?
  9. Wie kann ich anrufen C oder Fortran Funktion oder Prozedur mit PyNGL
  10. Wie, um die Proportionen oder Größe meiner Website ändern
  11. Wie komme ich an ein paar Stellen auf der Seite
  12. Ich habe ein paar Bereiche Schleife auf der gleichen Seite und wollen ein LabelBar schaffen, was alle von ihnen. Wie kann ich tun?
  13. Was ist ein guter Weg, um eine Farbe im Inneren PyNGL Karte erstellen
  14. Kann ich die Farbe Ressourcen der Farbname, nicht die Colour-Index-Werte
  15. Kann ich die Farbe Indexwerte oder Farbkarte in der Mitte des Rahmens
  16. Wie kann ich meine PostScript / PDF-Ausgabe auf die meisten der 8-1/2 “x 11”-Seite abdecken zu bekommen
  17. Wenn ich eine Geschichte zu erstellen, bekomme ich eine Fehlermeldung im Arbeitsbereich überschreitet die maximale Höhe der Umverteilung. Wie kann ich es beheben?
  18. Als ich zu LNG-und / oder NiO importieren, erhalte ich eine Fehlermeldung über Bibliothek libpng ist nicht aktuell.

    Lesen / Schreiben von Daten und Dateien auf Variablen und Attribute

    zugreifen

  19. Wie kann ich lesen / schreiben NetCDF, HDF, GRIB oder CCM Geschichte Tape-Dateien
  20. Wie kann ich die Lese / Schreib-ASCII-Dateien
  21. Was mache ich mit NaN (not a number) in meiner Datenbank
  22. ich versuche zu installieren, die _FillValue Attribut hat die Daten, sondern eine Fehlermeldung erhalten. Fragen

    Daten

  23. Wie richte ich einen fehlenden Wert für meine Daten?
  24. Wie kann ich feststellen, ob meine Daten fehlende Werte enthält
  25. Do Interpolation Funktionen im Modul PyNGL

    Construction Fragen

  26. So erzählen die Geschichte PyNGL keine fehlenden Werte in meinem Kontur, Vektor, zu rationalisieren, oder XY-Plot
  27. Wie kann ich log-Skalierung in der Kontur-oder XY-Plot
  28. Wie fülle ich meine Kontur Ebenen mit verschiedenen Schattierungen Muster und / oder feste Farben
  29. , wie die Attribute der Kurve oder Kurven, in XyPlot ändern
  30. Konturdiagramm als der Auferlegung (oder Vektor / straffen Plot) auf der Karte
  31. Wie von Breite / Länge Linien auf meiner Karte bezeichnet
  32. kann ich die Auflösung meiner Karte Umriss
  33. Wenn ich eine Farbe oder Kontur Vektor Plot erstellen, wie wähle ich meine Farben, so dass sie am ganzen Farbkarte sind verstreut
  34. Wie kann ich mehrere Skalen auf meinem XY-oder Konturdiagramm
  35. Wie kann ich eine doppelte Anführungszeichen (“) als Teil einer Zeichenkette in PyNGL
  36. Wie kann ich eine neue Linie wird als Teil einer Zeichenkette in PyNGL erscheinen
  37. Wie kann ich auf die X11-Fenster zu bringen und die Tastatur verwenden, für den Bau von der Kontrolle, ohne zu klicken
  38. Warum bekomme ich eine andere Linienstärke für verschiedene Ausgabegeräte mit der gleichen Dicke Die folgenden Fragen

    Behandlung

  39. Wie kann ich meine PyNGL Grafik-Dateien in andere Formate, wie GIF oder PNG, um auf der Seite eingestellt
  40. Wie kann ich ein Multi-Frame NCGM Datei in einzelne Dateien, PNG
  41. Wie kann ich ein Multi-Frame-PostScript-Datei in einzelne Dateien in PNG
  42. Als ich unklar PyNGL X11-Fenster mit einer anderen Anwendung war, das Fenster wird nicht aktualisiert, wenn ich es zurück an die Front. Dokumentation

    Fragen

  43. Wo finde ich eine Liste aller PyNGL Ressourcen
  44. Wo finde ich eine Liste aller Funktionen PyNGL
  45. Wo kann ich sehen einige Beispiele, wie man PyNGL verwenden

Allgemeine Fragen

  1. Wie kann ich das Standard NCGM / PostScript / PDF-Datei Namen von etwas anderem? Ändern Sie einfach das zweite Argument im Aufruf von Ngl.open_wks . Hier ist ein Beispiel einer Änderung des Namen in die Datei NCGM “plot1.ncgm”:
    Import Ngl
    
    #
    
    # Neues NCGM Workstation und ändern Sie den Namen der
    
    # Auf "plot1.ncgm" Metadatei.
    
    #
    
    wks = <a
    
    mapid =   Ngl.map   (WKS)
    
      Ngl.end   ()

  2. Wie richte ich meine PyNGL Skript, so dass es eine Ressource-Datei verwendet Siehe. Ressourcendateien Seite für weitere Informationen über die Ressource-Dateien.

    Wenn Sie anrufen

    Ngl.open_wks , um den Sender zu öffnen, dann Linie im zweiten Argument ermöglicht es ihnen, Ressource-Datei lesen in. Zum Beispiel, wenn Sie das folgende Skript PyNGL haben:

    Import Ngl
    
    # Neues Objekt X Workstation.
    
    wks = <a
    
    # Zeichnen Sie einen Text-String
    
    <A Welt ", 0.5,0.5)
    
      Ngl.frame   (WKS)
    
      Ngl.end   ()

    es wird für eine Ressource-Datei namens “title_app.res”-Look. Wenn Sie dann die folgenden Zeilen zu Ihrer “title_app.res”-Datei:

    * <A : Rot
    
    *   txFont  : Helvetica-Bold
    
    * <A : 12:06

    Sie sollten ein großes, rotes “Hallo, Welt”-Linie in der Mitte des Rahmens mit Helvetica-Bold.

  3. Wie kann ich alle meine Schriften, die gleiche Schrift PyNGL zunächst eine Szenario für die Verwendung einer Ressource-Datei (siehe Frage Ressource-Dateien oben), dann die Datei Ressourcen umfassen die folgenden Zeilen:
     * Schriftart: Helvetica

    Ändern alle Schriftart Helvetica (jede Schriftart verwenden möchten, natürlich). Alle Schriftarten, die Sie explizit festlegen das Skript PyNGL ersetzen Sie diese Datei, um Ressourcen zu konfigurieren.

    Um zu sehen, zum Beispiel Skript PyNGL “ ngl08p.py “, zusammen mit seiner Ressource-Datei” ngl08p.res ” und seinem Weg nach draußen . Versuchen Sie, die” Times-Roman “in der” ngl08p.res “-Datei in verschiedenen Schriftarten zu sehen, die Ergebnisse. Verwenden Sie entweder den Namen der Schriftart oder-Code in der font-Tabelle .

    Wenn Sie schon immer einmal diese Schriftart in allen Ihren Skripten PyNGL verwenden, dann stellen Sie die obige Zeile in einer Datei namens “. hluresfile “in Ihrem Home-Verzeichnis. Wenn PyNGL sehen.” Hluresfile “in Ihrem Home-Verzeichnis, es wird immer geladen werden, bevor sie ausgeführt oder Skripten PyNGL.

  4. Wie kann ich Zugang zu Sonderzeichen wie griechische Buchstaben Zuerst müssen Sie eine Schriftart, die in Ihrem Charakter ist gegeben, wenn angesehen Schriftart-Tabelle zu finden . Mit einem Klick auf einen der Font-Namen, wie “math_symbols”, zeigen Ihnen alle Zeichen für eine bestimmte Schriftart. Sobald Sie ein Symbol der Begierde, achten Sie auf die Schriftart-Tabelle Index (“ math_symbols ” ist Index von 18, zum Beispiel), und eine entsprechende Markierung, und dann können Sie Funktionscode Text “F” zu verwenden, Um die Schriftart zu ändern. Zum Beispiel, um ein Symbol nennen, würden Sie sehen, dass die Marke “N” in “ symbol_set1 ” Tabelle (Index 19), Bell. Sie können die Zeichenkette verwenden “~ F19 ~ n ~ ~ F” im Wortlaut einer Ressource, die Sie wollen das Glocken-Symbol zeigen. “~ ~ F” bedeutet eine Rückkehr zu den ursprünglichen Text.

    Beispiel, um es in den Titel:

     res. <a = "Bell (F19 ~ ~ n ~ F ~)"

  5. Kann ich auf PostScript-Fonts in PyNGL Skript AnzahlMit PyNGL font Nummer 4, erhalten Sie Schriftart simplex_roman streichelte, unabhängig davon, welche Sender Sie gerade gehen, auch PostScript-Stationen. Wenn Sie die “4” auf “Helvetica” zu ändern, erhalten Sie 21 PyNGL Schrift, das heißt die Schriftart Helvetica, mit Polygonen zu Zeichen und direkten Zugriff auf die Schriftart PostScript zu erzeugen.

    Es gibt einige Verwirrung über die Verfügbarkeit von Schriftarten, PostScript, weil sie auch mit einem niedrigen Niveau NCAR Graphics, sowohl in Diskussion sind PS gegen den Staat Komitee für Statistik der Schriftarten . Für NCAR Schriften ACS Nummern 1 und -2 -34 durch, um PostScript-Treiber Zugriff auf die Standard-PostScript-Schriften 13 (Slash-Slash und mutige Unterstützung, das heißt, die Zahl der font -23, -24, -27, -28, -31, – 32) . Bei Schriftarten -2 bis -20 (Hershey Fonts), wird die Zuordnung für die äquivalente Fonts sind PostScript getan, wenn möglich. Falls das Zeichen nicht verfügbar ist (zB Schreibschriften oder eine Karte von Verkehrszeichen), könnte es Plotchar verwendet werden. Wir hoffen, dass die Fähigkeit, PostScript-Fonts PyNGL in der Zukunft zugreifen hinzuzufügen.

  6. Wie bekomme ich eine Umgebungsvariable in PyNGL Mit Umgebung Funktion OS Modul Python:
     path = os.environ ["PATH"]

  7. Wie kann ich die Funktion Code der Text in etwas anderes standardmäßig Wenn Sie eine Standard-Implementierung PyNGL nutzen, die Standard-Funktion Code ist eine Tilde:. ~ ” ” Um die Funktion Code in ein anderes Zeichen verwenden Ngl.text zu ändern, Ngl.text_ndc , oder Ngl.add_text Verfahrensregeln, txFuncCode mehr Informationen:
     txresources. <a = "^"

    Wenn Sie Ihren Text-Funktion Code dauerhaft für jede einzelne Ressource Text geändert, die Sie jemals in all Ihren PyNGL Szenarien verwendet, und stellen Sie dann eine globale Ressource “TextFuncCode”, die nur in der Ressource-Datei kann eingestellt werden. Dies ist die beste Ressource in der Datei ~ / hluresfile. “Der nächste Weg:

     * TextFuncCode: ^

    ». Hluresfile”-Datei muss in Ihrem Home-Verzeichnis sein, um PyNGL es sehen und herunterladen.

  8. Mein Text-Strings in meinen Seiten, oder Verunreinigungen in ihnen, oder sie nicht vollständig reflektiert. Was ist das Problem? Wenn Sie auch Fehlermeldungen, die wie folgt aussehen:
     PLCHHQ - Zeichen Nummer 10 (w) ist keine juristische FUNKTIONSCODE

    es ist wahrscheinlich, dass das Problem ist, dass Sie eine Tilde (“~”) Zeichen in der Zeichenfolge haben. Standardmäßig, wenn PyNGL sehen Tilden in einer Reihe, wartet er auf das nächste Zeichen auf eine spezielle “ Funktionscode ” sein .

    Um dieses Problem zu umgehen, muss man sagen PyNGL Sie nicht möchten, eine Tilde stellen den Anfang der Funktion Code. Chap. vorherige Frage , wie der Text-Funktion Code zu ändern.

  9. Wie kann ich anrufen C oder Fortran Funktion oder Prozedur mit PyNGL Die C verlängern oder C + +, Ch. Teil Expansion und die Einführung der Python-Interpreter . Diese Seite beschreibt, wie Module in C oder C + +, Python-Interpreter, um mit neuen Modulen erweitern. Schreiben Diese Module können neue Funktionen, sondern auch neue Formen der Objekte und deren Methoden. Es beschreibt auch, wie man den Python-Interpreter in eine andere Anwendung einbetten, für den Einsatz als Erweiterung Sprache. Chap. Auch SWIG .

    Um

    mit Fortran, Ch. verlängern. f2py .

  10. Wie, um die Proportionen oder Größe meiner Site zu ändern Sie können Blick Ressourcen vpWidthF und <a Normalized Blick Koordinaten, dh sie nehmen Werte von 0,0 bis 1,0 (einschließlich) Satz. Zum Beispiel, wenn Sie Ihre Website doppelt so lang wie hoch wollen, dann können Sie vpWidthF und vpHeightF bis 0,8.Bitte beachten Sie, dass

    Änderung der Proportionen der Kartenprojektion, müssen Sie auch die Ressource mpShapeMode auf” FreeAspect “.

    Zum Beispiel verändert die Proportionen eines zylindrischen äquidistanten Karte, Ch. PyNGL Skript “ map1.py “, und dessen Ausgang ( 1 Frame und Rahmen 2 ).

  11. Wie komme ich an ein paar Stellen auf der Seite WennSeiten alle die gleiche Größe, dann können Sie das Verfahren PyNGL Ngl.panel , die als Eingabe eine Workstation, die Sie in Abschnitten, eine Liste von Websites, die Sie wollen auf der gleichen Seite, ein Array, das die Lage der Standorte, und eine zusätzliche Liste von Ressourcen beschreibt platzieren anziehen dauert. Zum Beispiel, die Verwendung von Ngl.panel Ch. Skript “ panel1.py “, und dessen Ausgang ( 1 Frame und Frame 2 ).

  12. Ich habe ein paar Bereiche Schleife auf der gleichen Seite und wollen ein LabelBar schaffen, was alle von ihnen. Wie kann ich tun? Siehe Antwort oben auf die Frage “Wie komme ich an ein paar Stellen auf der Seite”? Zum Beispiel zeigt, wie es um die gewünschten Barcode-Etiketten zu erhalten.
  13. Was ist ein guter Weg, um eine Farbe im Inneren PyNGL Karte erstellen Ersten Kapitel. Teil der ” Erstellen Sie Ihre eigene Karte mit den HSV-Farbwerte “, um im HSV-Farbrad und wie es Ihnen helfen, geben Sie Farbkarte. Schauen Sie sich color3 Beispiel und dessen Ausgang ( 1 Frame , Frame 2 , Box 3 ). Funktion Ngl.hsvrgb Modul in der NGL.

    Sie können die PyNGL <a Reduzieren Sie die aktuelle Karte Farbe mit der Workstation verbunden. Um zu sehen, zum Beispiel PyNGL “ color1.py “Skript und 1 Frame und Frame 2 ihre Produkte.

  14. Kann ich die Farbe Ressourcen der Farbname, nicht die Colour-Index-Werte Siehe. “ Erzeugen Ihrer eigenen Farbe Karte mithilfe von benannten Farben und RGB-Werte von “-Teil.
  15. Kann ich die Farbe Indexwerte oder Farbkarte in der Mitte des Rahmens Der Schwerpunkt dieser Farbwechsel. Wenn die Hintergrundfarbe in der Mitte des Bildes (Colour-Index 0) geändert wird, dann in den meisten Fällen zum Zeitpunkt der Änderung der Hintergrundfarbe des Rahmens wird überschrieben mit dieser Farbe. Sofern Sie die Hintergrundfarbe in der Mitte des Bildes zu ändern, sollten Sie Ihre Ergebnisse optional sein. Chap. Ein einfaches Beispiel unten.

    Der Versuch, in eine völlig neue Farbe Karte ändern problematisch ist, wieder in erster Linie aufgrund von Bedenken setzen Sie die Hintergrundfarbe. Wenn Sie PS-oder PDF-Ausgabe, und sind, ob Ihr Standard-Hintergrundfarbe, dann sollte alles funktionieren. Die Dinge sollten in allen Fällen der Übergang zu NCGM und Übersetzung von CTRANS arbeiten. Herstellung von X11-Ausgabe funktioniert, vor allem wenn Sie die Hintergrundfarbe zurückgesetzt.

    Aber um auf der sicheren Seite zu sein, das wird in allen Fällen funktionieren beginnen mit einem Farb-Karte, und dann überschreiben alle Farbindizes, außer für den Hintergrund. Zum Beispiel, wenn Sie eine Farbtabelle von 256 Farben definiert sind und Sie wollen, dass in der Mitte des Bildes zu ersetzen mit einer anderen Farbe Tabelle, verwenden Sie die Ngl.set_color , um alle Index-Werte der Farbe überprüfen, mit Ausnahme der Index 0. Die Logik im folgenden Beispiel veranschaulicht dies:

    import numpy, NGL
    
    res = Ngl.Resources ()
    
    #
    
    # Zeichnet Zellen, Befestigung sie in eine Kiste mit der linken unteren Ecke (XLL, YLL)
    
    # Und oberen rechten Ecke (XUR, yur) mit nx Zellen in x-und y-Zellen in NY.
    
    # Für jeden Aufruf jeder Zelle gefärbt ist mit steigenden Indizes in die
    
    # Aktuelle Farb-Karte * beginnend mit Colour-Index 2 *.
    
    #
    
    def draw_cells (WKS, XLL, YLL, XUR, yur, nx, ny):
    
     xinc = (XUR-XLL) / nx
    
     yinc = (yur-YLL) / NY
    
     für j in xrange (NY):
    
     plly YLL = + j * yinc
    
     Pury = plly + yinc
    
     for i in xrange (nx):
    
      pllx XLL = + i * xinc
    
      purx = pllx + xinc
    
      x = numpy.array ([pllx, purx, purx, pllx, pllx])
    
      y = numpy.array ([plly, plly, Pury, Pury, plly])
    
      res.gsFillColor = i + j * nx 2
    
      Ngl.polygon_ndc (Wo, x, y, res)
    
    #
    
    # Definieren Sie Farben "schwarz", "rot", "grün", "blau", um
    
    # Beginnend mit Farbindex Sekunden
    
    #
    
    cmap = numpy.array ([[0., 0., 0.], [1. 1., 1.], [0., 0., 0.] \
    
         [1., 0., 0.], [0. 1., 0.], [0., 0., 1.]])
    
    rlist = Ngl.Resources ()
    
    rlist.wkColorMap = cmap
    
    wks_type = "ps"
    
    wks = Ngl.open_wks (wks_type, "Zelle", rlist) # Öffnen Sie eine PostScript-Workstation.
    
    #
    
    # Zeichne vier Farbfelder in der unteren Hälfte des Grundstücks
    
    # Mit dem cmap.
    
    #
    
    draw_cells (Wochen, 0., 0., 1,0, 0,5, 2, 2)
    
    #
    
    # Definieren Sie Farbe für Indizes 3-5.
    
    #
    
    Ngl.set_color (WKS, 3, 0., 1., 1.) # Cyan
    
    Ngl.set_color (WKS, 4, 1., 0., 1.) # Magenta
    
    Ngl.set_color (Wochen, 5, 1. 1., 0). # Gelb
    
    #
    
    # Zeichne Farbfelder mit dem neu definierten Farbe Karte.
    
    #
    
    draw_cells (Wochen, 0., 0,5, 1,0, 1,0, 2, 2)
    
    Ngl.frame (WKS)
    
    Ngl.end ()

  16. Wie kann ich meine PostScript / PDF-Ausgabe auf die meisten der 8-1/2 “x 11”-Seite abdecken zu bekommen PyNGL erledigt das für Sie automatisch, weil der besondere Ressource nglMaximize Wahre ist standardmäßig.

    Wenn Sie wollen, um die Lage des Standorts im PS / PDF-Ausgabe, wenn Sie eine PostScript-oder PDF-Workstation Auslastung erstellen <eine Kontrolle <A <A und <a :. Hinweis: über die Ressourcen wirksam werden, müssen Sie nglMaximize in False sonst wird Ihre Website füllen Sie die Seite. Beachten Sie, dass Sie einen negativen Wert für diese Ressourcen haben.

  17. Wenn ich eine Geschichte zu erstellen, bekomme ich eine Fehlermeldung im Arbeitsbereich überschreitet die maximale Höhe der Umverteilung. Wie kann ich es beheben? Wenn die Fehlermeldung lautet wie folgt:
     fatal: ContourPlotDraw: Workspace Umverteilung würde maximale Größe überschreiten
    
     16777216
    
     fatal: ContourPlotDraw: Auslosung Fehler
    
     fatal: ContourPlotDraw: Auslosung Fehler
    
     fatal: PlotManagerDraw: Fehler im Plot Auslosung
    
     fatal: _NhlPlotManagerDraw: Draw Fehler

    dann müssen Sie heben Sie die Größe des Arbeitsbereichs. Zuerst müssen Sie die Standard-Arbeitsbereich zu bekommen, und dann können Sie “ <a gesetzt “Resource. Um dies zu tun, fügen Sie den folgenden Code direkt nach der Schaffung des Arbeitsplatzes:

    ws_id = <a
    
    rlist = Ngl.Resources ()
    
    rlist. <a = 33554432
    
    <A

    Sie können sich jederzeit erhöhen, den Arbeitsraum, Festlegen der Größe von <a in der Datei ~ / hluresfile.:

    *  <A : 33554432
    
    

    Wenn Sie eine Kontur zu zeichnen, können Sie stattdessen versuchen, mit Hilfe eines Raster-Kontur, zur Schaffung Ressource <a auf “RasterFill”.

  18. Als ich zu LNG-und / oder NiO importieren, erhalte ich eine Fehlermeldung über Bibliothek libpng ist nicht aktuell. PyNGL und PyNIO Module können mehrere Abhängigkeiten von Bibliotheken PNG (libpng) haben, und somit kann es abhängig von der Gesamt- -Version dieser Bibliothek. Die meisten Linux-und MacOS-Systeme kommen mit dieser Bibliothek bereits installiert ist.

    In einigen Fällen können Sie jedoch eine ältere Version dieser Bibliothek auf Ihrem System haben, und Sie werden Beschwerden bekommen, dass es nicht aktuell genug.

    Wir liefen in einem Fall, wenn die Modernisierung des Systems Apple MacOS 10.5.2 mit MacOS 10.5.8, um das Problem zu lösen, denn es verursacht die PNG Bibliothek aktualisiert werden.

    Linux-Anwender können möglicherweise “yum” oder “Fähigkeit”, um ihre Bibliotheken PNG aktualisieren.

    Sie können auch die Bibliothek auf eigene Faust oder mit einem vorkompilierte Binär-oder Source-Code. K http://www.libpng.org/pub/png/libpng.html und entweder laden Sie die vorkompilierte Binär-, oder Source-Code (“. tar.gz”-Datei unter “mit config-Skript”).

    Lesen / Schreiben von Daten und Dateien auf Variablen und Attribute

    zugreifen

  19. Wie kann ich lesen / schreiben NetCDF, HDF, GRIB oder CCM Geschichte Tape-Dateien Sie können mit dem Modul Nio , kommt das mit PyNGL. NIO ist ein Modul von Python, die Sie zum Lesen und / oder Schreiben von Daten in verschiedenen Formaten über eine Schnittstelle auf der NetCDF modelliert werden können. NetCDF ist <A

    und Netzwerk transparent Datenformat – Ch. NetCDF Bedienungsanleitung für weitere Einzelheiten.

  20. Wie kann ich die Lese / Schreib-ASCII-Dateien Streng, um die Beispiele zu unterstützen, ist es sehr einfach, ASCII-Funktion zu lesen, Ngl.asciiread , wurde als Teil des Moduls PyNGL geschrieben. Natürlich lesen alle Python-Funktionen sind ebenfalls erhältlich.

  21. Was mache ich mit NaN (not a number) in meine Daten Können Sie verwenden, um die NumPy NaN-Werte für fehlende Werte ändern:
    import numpy als N
    
    var1 = N.where (N.isnan (var [:]), var._FillValue [0], var [:])

  22. Ich versuche zu installieren, die _FillValue Attribut hat die Daten, sondern eine Fehlermeldung erhalten. Wenn Sie versuchen, _FillValue Attribut zur Speicherung von Daten zu installieren, und eine Fehlermeldung erhalten:
    ncendef: NCID 65536: NetCDF: Kein gültiger Datentyp oder _FillValue Typenkonflikt

    es bedeutet, dass Sie einen Wert, der den falschen Datentyp für die Variable hat. NetCDF erfordert _FillValue Typs haben die gleiche Art von Variable es angebracht ist (nicht ohne Grund). Darüber hinaus verarbeitet PyNIO _FillValue der Job wie jeder andere Attribut der Job bedeutet, dass sie nicht versucht, diese Art von Hand zu konvertieren.

    Wenn die Daten variabel zu “schweben” in NetCDF, müssen Sie ihm einen _FillValue “numpy.float32”. Wenn Sie es auf die wörtliche Bedeutung von “-999”, wird es eine ganze Zahl, die nicht funktionieren wird. Ach, auch wenn Sie den Wert “-999,0” verwenden, wird es nicht funktionieren, weil der Standard-Typ von Fließkomma-in Python (und NumPy) ist ein “float64”, als “double” in NetCDF bekannt. Daher müssen Sie explizit eine NumPy “float32”-Wert.

    Sie können dies tun:

    import numpy
    
    ...
    
    data._FillValue = numpy.array (-999,0, dtype = numpy.float32)

    oder

    data._FillValue = numpy.array (-999,0, dtype = 'f')

    Wir können versuchen, dies in Zukunft zu verbessern, dass Sie eine vernünftige Umwandlung PyNIO Typ für das Attribut _FillValue Zugeständnisse zu machen.

    Fragen

    Daten

  23. Wie richte ich einen fehlenden Wert für meine Daten? PyNGL als Grafik-Bibliothek konstruiert, und als solches ist es ein mimimal Datenverarbeitungseinrichtung aufweist. Solche Funktionen sind Bestandteil der Zukunft Modul PyNGL sein.

    Beginnend mit Version 1.3.0b1, die meisten Funktionen in der PyNGL automatische Verarbeitung von fehlenden Werten, wenn Ihr Array NumPy maskierten Array . Wenn Sie noch kein maskierten Arrays und Ihre Daten fehlende Werte enthalten, dann muss man speziell legen Sie die entsprechenden Ressourcen. Beispiele für ein Vektorfeld und Skalarfeld, fehlende Werte, Ch. Teil Tutorial Beispiel 6 , wie beispielsweise durch die Koordinaten eines Arrays von fehlenden Werten, Ch. Lehrbuch , zum Beispiel 10 .

  24. Wie bestimme ich, ob meine Daten enthält fehlende Werte Sie müssen die ursprünglichen Daten zu überprüfen. Zum Beispiel, wenn Sie Daten aus einer netCDF-Datei von der Baugruppe lesen Nio können Sie überprüfen, ob diese Variable ist _FillValue oder missing_value -Attribut. Chap. Paradebeispiel 6 .

    Haben

  25. Interpolation Funktionen im Modul PyNGL Mehrere

    Interpolation Funktionen in dem Modul PyNGL, vor allem zur Unterstützung der Beispiele aufgenommen. 1-Spannung Spline-Interpolation Größen Ngl.ftcurv befindet sich im Tutorial verwendet Beispiel 11 . Eindimensionale Spline-Interpolation der Spannung für eine regelmäßige Daten Ngl.ftcurvp wird verwendet im Lehrbuch Beispiel 7 . Eindimensionale Integral-Rechner für periodische Daten Ngl.ftcurvpi verwendet wird, in Lehrbuch Beispiel 7 . Zweidimensionalen statistischen Daten Interpolation Ngl.natgrid befindet sich im Tutorial verwendet Beispiel 8 .

    Construction Fragen

  26. So erzählen die Geschichte PyNGL keine fehlenden Werte in meinem Kontur-oder XY-Plot Wenn Sie eine Version 1.3.0b1 oder später PyNGL haben, dann werden die fehlenden Werte werden automatisch ignoriert, wenn Sie NumPy maskierten Array -Funktion im Konzert.

    Allerdings, wenn Sie nicht über eine Reihe von Masken, die Kontur Daten, die Verwendung von <a Ressourcen <a (Z. B. CH. Tutorial-Sektion Beispiel 9 ). Für einen Vektor oder rationalisieren Daten, Ressourcennutzung <ein und <a Für den XY-Daten, Ressourcennutzung <a oder <a (Z. B. CH. Tutorial-Sektion zB 10 ).

  27. Wie kann ich log-Skalierung in der Kontur-oder XY-Plot Um plotten XY, viele XyPlot Ressourcen xyXStyle und / oder xyYStyle auf den” Login “, abhängig von der Achse, die Sie in der logarithmischen Skala sein . Zum Beispiel, Ch. Skript “ xy1.py “und Ausgang ( Bild 1 ).Für ein Konturdiagramm

    , geben Sie die Methode der Veränderung Skalierung ist abhängig von den Koordinaten der Achse, die Sie wollen regelmäßig oder unregelmäßig angeordneten eingeben. Werden sie regelmässig angeordnet sind, und verwenden Sie dann trXLog oder trYLog in der gleichen Weise wie getan wurde für die XY-Plot oben. Zum Beispiel, Ch. wie “ contour1.py “, und dessen Ausgang ( Bild 1 die Standardeinstellung linear / linear skaliert und Box 2 mit einem linearen / log-Skala).

    Vermessungsstation für unregelmäßig gelegen Daten ist derzeit nicht implementiert.

  28. Wie fülle ich meine Kontur Ebenen mit verschiedenen Schattierungen Muster und / oder feste Farben Wenn Sie nur wollen, um Ihr Niveau Schaltung aus einer Vielzahl von Uni-Farben, viele füllen cnFillOn auf True. Um die Standard-Farben für die Kontur Ebenen verwendet, Set ändern <a ein Array von Indizes gewünschte Farbe (vergessen Sie nicht, eine ausreichende Anzahl von Farben für die Anzahl der Stufen plus eine Kontur enthalten).

    Wenn Sie die Kontur Ebenen mit verschiedenen Schattierungen Bildern füllen wollen, sollten Sie <a in False. So ändern Sie die Standard-Füllmuster für die Kontur Ebenen, set <a verwendet eine Reihe von gewünschten vollständiges Bild-Index (wieder, vergessen Sie nicht genug sind, um eine Vorlage für die Indexnummer der Kontur Ebenen füllen Plus a). Es gibt 18 verschiedene Modelle zum Ausfüllen: Das Bild 0, Füllungen, Muster 1-16 verschiedene Vorlagen Füllen, und ein Bild der 17 Sonderprüfungen sah, Füllmuster. Wenn Sie die “-1” zu füllen verwenden, bedeutet dies, lassen Sie es transparent (keine Füllung).

    Zum Beispiel zeigt das, wie man ein Konturdiagramm mit verschiedenen Farben und Füllmuster, Ch. erstellen. Skript “ contour2.py “und Ausgang .

  29. , Wie die Attribute der Kurve oder Kurven, in XyPlot ändern Sie sollten in der Lage sein, Ressourcen für XyPlot sowie für andere Einrichtungen vor Ort eingestellt. Um zu sehen, zum Beispiel das Skript “ multi_y.py “und seine erste Frame .

    XyPlot kann noch ein paar Kurven. Ändern Sie beispielsweise Attribute für mehrere Kurven Ch. Skript “ color2.py “und Ausgang .

  30. Konturdiagramm als der Auferlegung (oder Vektor / straffen Plot) auf der Karte FürKonturen auf der Karte, Ch. in Bezug auf Lehrbeispielen 5 und 9 . Für Vektoren, Ch. Lehrbuch Beispiel 6 . Vereinfacht über die Karten können in ähnlicher Weise mit Ngl.streamline_map .

  31. Wie kann ich einen bestimmten Breitengrad / Längengrad Tickmarks auf meiner Karte? Wenn die Projektion ist rechteckig, dann sollten Sie die Lat / Lon Tickmarks standardmäßig zu bekommen. Wenn Sie dies deaktivieren möchten, können Sie die Ressource <a auf “Nie”.

    Um z. B. Lat / Lon Tickmarks Ch. Konturdiagramm wird überlagert, Sec. “ chkbay.py ” und seinem Weg nach draußen . Zum Beispiel, was macht diese Signale Tickmarks Ch. “ ctnccl.py “und seinem Weg nach draußen .

  32. Kann ich die Auflösung meiner Karte Umriss Zum Beispiel mit <a Quellen an. Der Standardwert ist “LowRes”. Wenn Sie es ändern, um “MediumRes” oder “High Definition”, verbessern Sie die Auflösung Ihrer Karte Konturen.

    Zum Beispiel, Vergleich der drei Ebenen der Resolutionen, Ch. Szenario coast1.py , und

    Rahmen 1 (niedrige Auflösung)

    Box 2 (mittlere Auflösung)

    Box 3 (hohe Auflösung)

    Hinweis: Die “hohe Auflösung” Ressource Wert für die Küsten-Umriss nur, und du musst zum Download der Rangs (Regional Erschwingliche verschachtelten globalen Küsten) Datenbank, die von Rainer Feistel von Wessel und Smith entwickelt GSHHS (Global Self-konsistente hierarchische hochauflösende Uferlinie) Datenbank. Für weitere Informationen über wie und wo die Datenbank zu installieren, lesen Sie ein kurzes Stück auf der Hochauflösende Küsten .

  33. Wenn ich eine Farbe oder Kontur Vektor-Plot erstellen, wie wähle ich meine Farben, so dass sie am ganzen Karte verteilt sind Farbe Dies ist der Standard bei der Verwendung von PyNGL (NCL Nutzer berichten, dass diese anders als die Standardeinstellungen in diesem Paket ist). Blumen in der aktuellen Tabelle Farben gleichmäßig entlang der Kontur Ebenen. Wenn Sie diese Funktion von Ressourcen gesetzt deaktivieren möchten nglSpreadColors auf False. In diesem Fall werden die Farben in der Farbtabelle auf die Schaltung Ebene durch den Vergleich der Farbe Indizes mit Abständen Kontur zugewiesen werden.

    Zum Beispiel, wenn der Standardwert nglSpreadColors (True ) in Kraft tritt, Ch. vierte Frame auf ngl02p.py . Zum Beispiel die Schaffung dieser Ressource auf False, Ch. erste Bild auf ngl08p.py .

    Wenn Sie die Farbe abbrechen möchten, können Sie die <a auf die Farbe Index am Ende der Farbtabelle und <a der Farbindex ist näher an der Spitze der Farbtabelle. Um zu sehen, zum Beispiel, seam.py und seine erste Frame .

  34. Wie kann ich mehrere Skalen auf meinem XY-oder Konturdiagramm Wählen Sie eine der TM Ressource * Modus Offensichtliche (abhängig von der Achse, die Sie wollen, separat zu kennzeichnen), dann verwenden Sie die Werte TM * und * TM Labels Ressourcen, um die Etiketten, die Sie wollen, egal, was das Zeichen der Wert, den Sie möchten, um sie zu überprüfen. Um zu sehen, zum Beispiel “ multi_y.py “und ihrem dritten Schuss .

    Zum Beispiel sind die unterschiedlichen Skalen auf der Kontur Plot, Ch. Szenario “ ngl11p.py ” und seine erste Frame .

  35. Wie kann ich eine doppelte Anführungszeichen (“) als Teil einer Zeichenkette in PyNGL Setzt einen String in Anführungszeichen. Zum Beispiel:
    Import Ngl
    
    wks = <a
    
    txres = Ngl.Resources ()
    
    txres. <a = 0.03
    
    <A
    
      Ngl.frame   (WKS)
    
      Ngl.end   ()

  36. Wie kann ich eine neue Zeile als Teil einer Zeichenkette in PyNGL Sie können Funktionscode Text verwenden , die einen Wagenrücklauf (“C”) steht für:
    Import Ngl
    
    wks = <a
    
    txres = Ngl.Resources ()
    
    txres. <a = 0.03
    
    <A
    
      Ngl.frame   (WKS)
    
      Ngl.end   ()

    Hinweis: Das oben gezeigte Beispiel verwendet die Tilde (“~”) für Funktionscode Text PyNGL. Dies ist die Standardeinstellung, wenn Sie eine Standard-Implementierung verwenden. Sehen Sie sich die Frage nach der ändern Sie die Funktion Text-Code für weitere Informationen.

  37. Wie kann ich auf die X11-Fenster zu bringen und die Tastatur verwenden, für den Bau der Kontrolle ohne klickenSiehe

    . Beispiel Dokumentation für <a

  38. Warum bekomme ich eine andere Linienstärke für verschiedene Ausgabegeräte mit der gleichen Dicke Dicke Linien auf verschiedene Ausgabegeräte (X11, PostScript, PDF, etc.) angezeigt wird, kann für die gleichen Werte der Dicke der Linie abweichen. Dies ist auf mehrere Faktoren zurückzuführen.

    Jedes Gerät verfügt über eine Standard-oder eine Nenndicke von der Linie (manchmal auch als Linienbreite genannt). Dies ist eine Nennweite der Linienbreite einer Linie mit einer Dicke von einem Standardwert von 1,0 gezogen. Im Allgemeinen ist der Nenn-Linienbreite für verschiedene Geräte. Mit diesem Gerät der Standard-Ansicht, die Linienbreite kann aus kaum wahrnehmbar, Fett zu variieren. Zum Beispiel kann der Nennweite Linien für die PostScript-Ausgabe aussehen dünner als die Zeile mit der gleichen Spezifikation Breite der X11-Fenster gezogen. Darüber hinaus können Ergebnisse für das X11-Ausgabe hängt von der Auflösung des Ausgabegeräts.

    Linienbreite Skalierungsfaktor wird auf der nominellen Linienbreite auf das Gerät angewendet. Dies bedeutet jedoch nicht notwendigerweise die Linien, ist dieser Faktor größer als die Breite des Standard. In der Tat kann der Skalierungsfaktor haben keine Wirkung, oder unerwartete Reaktionen. Im Allgemeinen ist die Skalenfaktor zur Linienbreite wird für das Standard-Gerät und Karten für die nächstgelegenen freien Linienbreite der Ausrüstung angewandt, unterstützt das Gerät. Um PostScript-Ausgabe der Ergebnisse erhalten Sie wird wahrscheinlich so genau sein wie Sie wollen drucken, aber für die X11-Ausgabe, PostScript, oder auf einem Computer-Monitor, erhalten Sie unterschiedliche Ergebnisse.

    Verschiedene Geräte auch interpretieren Spitzenbeträge, oder Null, die Linienbreiten in unterschiedlicher Weise. Zum Beispiel, PostScript-oder PDF erzeugen immer die Linie, egal wie klein Linienbreite – die Breite der Null-Linie wird eine Linie ein Pixel breit zu produzieren. Doch für X11-Ausgabe beliebiger Wert der Linienbreite von weniger als 0,5, in der Regel, Karten von der Breite der Null-Linie, nämlich die nächstgelegenen freien Linienbreite Ausrüstung. Im Gegensatz zu den PS-oder PDF, nicht null-breite Linien in X11-Ausgabe nicht verschwinden.

    Wenn Sie versuchen, “kratzen” mit der Linie sind, um die Empfehlung tun es keinen anderen Weg als die Einstellung von Linienstärke auf 0 setzen. Zum Beispiel, können Sie es auf die Hintergrundfarbe zu zeichnen. So erhalten Sie die gleichen Ergebnisse für die X11-und PostScript.

    Die Quintessenz ist, dass Sie sollten nicht überrascht sein, dass Sie, wenn es um die Breite der Linien kommt zu bekommen – es ist definitiv abhängig vom Ausgabegerät.

    Zum Beispiel thickness.py ausführen können, um eine Vorstellung davon, was die verschiedenen Linien gezeichnet werden, erhalten mit unterschiedlicher Dicke Spezifikationen werden auf verschiedenen Geräten zu suchen. In diesem Beispiel müssen Sie das Ausgabegerät zu ändern, wenn Sie in den Ergebnissen anderer als PostScript interessiert sind.

    Die folgenden Fragen

    Behandlung

  39. Wie kann ich meine PyNGL Grafik-Dateien in andere Formate, wie GIF oder PNG, um auf der Seite eingestellt Zuvor empfehlen wir ein Skript namens “ncgm2gif” NCGMs bis zu GIF-Dateien zu konvertieren. Doch “ncgm2gif” hat sich ein bisschen veraltet, und es gibt effizientere Methoden in andere Formate konvertieren von Rasterdaten.

    Wir empfehlen Ihnen, mit einem PostScript (PS) oder Encapsulated PostScript (EPS)-Datei zu starten, und dann mit “convert” aus einem Set von Tools zur Dateikonvertierung, PS in ein anderes Format wie GIF, PNG, oder MPEG.

    Sie können eine Reihe von ImageMagick: http://www.imagemagick.org/~~V auf “Download”-Link auf der linken Seite klicken und du wirst mit vielen Optionen für Ladeflächen präsentiert werden.

    Mac-Anwender können es mit der “Finca install ImageMagick”. Sie müssen sich zuerst installiert haben Fink – http://fink.sourceforge.net/ .

    Wenn Sie Geräte hergestellt und installiert haben, können Sie Ihre PS-oder PDF-Dateien in andere Formate konvertieren mit:

     convert-trimmen file.ps file.png
    
     convert-Trimm file.pdf file.png

    Wir möchten die “Trim” verwenden, um unerwünschte weißen Raum um das Bild zu entfernen. Dadurch verringert sich seine ziemlich nahe, so dass, wenn man es in der Präsentation von PowerPoint, ist es am besten einen reinen weißen Hintergrund zu verwenden, damit das Bild nicht abgeschnitten wird, sieht lächerlich aus.

    Dokumentation auf “Convert” sind zu finden unter:

    <a Es gibt viele Optionen, um zu konvertieren, dass, nach ihren Webseiten, die Ihnen erlaubt, “ändern Sie die Bildgröße, Unschärfe, Ernte, Flecken, Glätten, verlassen sich auf, drehen, verbinden, Re-Probe, und vieles mehr.”

  40. Wie kann ich ein Multi-Frame NCGM Datei in einzelne Dateien, PNG Herunterladen Python-Skript ncgm2png . Die Ausführung dieses Skript ohne Argumente produzieren mit Hilfe der Informationen. Um zu arbeiten, erfordert dieses Szenario, dass Sie auf ImageMagick Paket installiert ist, sowie CTRANS und Honig von Verteilung PyNGL .

  41. Wie kann ich ein Multi-Frame-PostScript-Datei in einzelne Dateien in PNG Herunterladen Python-Skript ps2png . Die Ausführung dieses Skript ohne Argumente produzieren mit Hilfe der Informationen. Um zu arbeiten, erfordert dieses Szenario, dass Sie mit ImageMagick Paket installiert ist, sowie psplit konvertieren auf Verteilung PyNGL .

    Als ich

  42. unklar PyNGL X11-Fenster mit einer anderen Anwendung, das Fenster nicht aktualisiert wird. Vielleicht liegt das Problem der X11-Shop Support. Wenn Sie den folgenden Befehl ein: xdpyinfo | grep-Unterstützung und die Ausgabe ähnlich: Optionen: Sicherungsspeicher nein, sparen unders NO-it Sie müssen in den Warenkorb auf Ihrer Konfiguration zu aktivieren, X- der Server.

    Es gibt verschiedene Wege, dies zu tun, je nachdem, welches System Sie sich befinden. Das System Linux, versuchen Sie, eine Zeile einzufügen: Option “BackingStore” in der Device Abschnitt Ihrer X-Server-Konfigurationsdatei (gewöhnlich / etc/X11/XF86Config oder / etc/X11/XF86Config-4). Darüber hinaus können Sie den X-Server mit der “+ BS” ausführen, um das gleiche Ergebnis ohne Ihre Konfigurationsdatei bearbeiten zu bekommen. Starten Sie den X-Server und führen Sie dann xdpyinfo Befehl erneut aus, um sicherzustellen, dass der Sicherungsspeicher nun aktiviert ist.

    Auf einem PC mit Hummingbird, laufen die Exceed “xconfig”-Programm. In der Xconfig Menü auf der “Performance” doppelklicken. Achten Sie darauf, die “Rettet die Vorstellung als” installiert, stellen Sie die “Maximum Hintergrundspeicher” auf “Immer”, ein Satz von “Standard-Sicherungsspeicher” durch “Mapping” und setzen “Minimum Hintergrundspeicher” durch “Mapping”.

    Dokumentation

    Fragen

  43. Wo finde ich eine Liste aller Ressourcen PyNGL Gehe zu URL: http://www.pyngl.ucar.edu/Resources/

  44. Wo finde ich eine Liste aller Funktionen PyNGL Zu Funktion Listen , zur Verfügung alphabetisch oder nach Kategorie.

  45. Wo kann ich sehen einige Beispiele, wie man PyNGL verwendenZu Beispielszenario PyNGL .


Comments are closed.