JSB to PNG

From FlightGear wiki
Revision as of 23:40, 26 February 2020 by Necolatis (Talk | contribs) (Added instructions for use)

Jump to: navigation, search

JSB to PNG is a tool programmed in python.

It will take a JSBSim file as input and will then output PNG images of the tables in that file.

Will output both lines and carpet plots for 2D/3D tables. For 1D tables just line plot.

A carpet plot plot of a 2D table
A lines plot of a 2D table
A lineplot of a 1D table

Instructions

Requires python with plotly.express and plotly.graph_objects libraries (recent version).

When run, a folder will be created in working folder named same as the jsb input filename, but without the xml extension.

In that folder PNG of the tables will be output, it will overwrite images if the folder is not empty.

Each table in the JSB input file that you want to graph must have name attribute in the tag. That name will also be used a Y-axis title in the graphs. Do not have multiple tables with same name since its used in naming the image files also.
For 2D and 3D tables <independentVar> tags must all have lookup attributes.
Example:
                 <table name="Groundeffect normal force">
                    <independentVar lookup="row">aero/h_b-mac-ft</independentVar>
                    <independentVar lookup="column">aero/alpha-deg</independentVar>
                    <tableData>
                               0.0     5.0    15.0     90.0
                        0.0  0.0000  0.2000  0.6500  -0.2500
                        2.2  0.0000  0.0000  0.0000   0.0000
                    </tableData>
                </table>

For 2D and 3D tables it will graph both a lines and a carpet plot.


Commandline: python jsb-to-png.py [filename]


If no filename is specified as commandline argument then "jsb-test.xml" is assumed.

See also

Jiff (C++ program that does approx the same thing

External links

JSB to PNG on Github