Mit Blick auf ein Juwel, das graphing Fähigkeiten zu Garnelen hinzufügt, fand ich this one, aber es scheint ein wenig veraltet. Gibt es dafür ein aktiveres Juwel?Grafiken mit Garnele
Antwort
Es gibt nichts sehr aktiv für die grafische Darstellung in Prawn direkt, aber Gruff ist ein aktives Juwel, das in hohem Maße konfigurierbar ist und Ihnen erlaubt, alle Arten von Graphen zu machen.
In der Tat ist Prawn-Graph im Grunde ein Wrapper um ruppig!
Mein Rat ist es, ruppig zu verwenden, um die erforderlichen Diagramme und Grafiken zu generieren und sie dann als Bilder in das Prawn-Dokument einzubetten.
So würde der Code wie folgt aussehen:
g = Gruff::Line.new(400)
g.title = "Transparent Background"
g.theme = {
:colors => ['black', 'grey'],
:marker_color => 'grey',
:font_color => 'black',
:background_colors => 'transparent'
}
g.labels = {
0 => '5/6',
1 => '5/15',
2 => '5/24',
3 => '5/30',
}
g.data(:apples, [-1, 0, 4, -4])
g.data(:peaches, [10, 8, 6, 3])
g.write(path_to_save)
Prawn::Document.generate("graphed-pdf.pdf") do
text "The image will go right below this line of text."
image "#{path_to_save}"
end
ich eine Garnele Visualisierungs- Bibliothek erstellt PrawnCharts genannt, die auf Garnelen hängt nur und beruht nicht auf RMagick und ImageMagick. rMagick und ImageMagick sind lästige Abhängigkeiten (große Dateien, mühsam zu installieren, etc.) und erstellen größere Dateien im Vergleich zu einer nativen Lösung wie PrawnCharts. Hier
ist ein Beispiel eines Graphen I mit PrawnCharts generiert:
Fühlen Sie sich frei Pull-Anfragen einreichen - ich werde sie fusionieren.
@ eggie5 bezüglich der Verwendung von ruppig mit Garnelen ein Bild einzufügen, ohne sie auf die Festplatte zu speichern, ist es ziemlich einfach:
image StringIO.new(g.to_blob)
ist es eine Möglichkeit, Garnele passieren das Bild Bytes anstatt sie auf die Festplatte geschrieben und vorbei an zu garnelen? – eggie5
@ eggie5 nicht möglich imo. –