Releases: graphia-app/graphia
Release 5.1
5.1
Bug Fixes
- Fix operation of WebSearch plugin under Windows
5.0
Loading
- Allow for loading adjacency matrices from .txt files
- Improve error message when loading inconsistent tabular data files
- Improve file content identity algorithm
- Adjacency matrix loaders can now be cancelled
Transforms and Visualisations
-
Add Type Cast transform, to convert attribute types
-
Add Shared Text visualisation channel, enabling the textual annotation of groups of nodes
Attributes
-
Add facility to edit the type and description of user defined attributes
-
Warnings are now shown regarding duplicate values when importing attributes
Correlation
-
Add Find Rows of Interest functionality, identifying rows that correlate with selected columns
-
Add ability to fix correlation plot sort order when Data Value sort is in force
-
Add Save As Images By… → Row option to output an image for each selected table row
-
Add functionality to import column annotations onto an existing correlation plot
-
High resolution rendering of the correlation plot on high DPI displays
-
Add antilog functionality to correlation plot
-
Enable log and antilog correlation scaling methods in situations where they were previously unavailable
-
Add Softmax data normalisation method to correlation loader
-
Warnings are now shown regarding duplicate values when importing column annotations
Miscellaneous
-
WebAssembly support
-
Add option to load an external node layout using the same file format as produced by the export option
-
A command line headless mode is now available that enables the creation of .graphia files without manually needing to select parameters in the UI; useful for batch processing on servers
-
Add Crop To Selection option to the attribute data table, which synchronises the node selection with the current table row selection
-
Add View → Show Edges option, which allows for disabling the rendering of edges entirely
-
Text size can now be altered on-the-fly in the Layout Settings panel
-
Double clicking the background in overview mode now resets the view
-
Ease restrictions on zooming in overview mode
-
Add Focus Selection option to Table menu, which will focus the nodes corresponding to the current table row selection
-
Add Auto Focus option, which does the same as the above, except automatically whenever the row selection is changed
-
Better handling of operating system UI theming, including Dark Mode on platforms that support it
-
Default sort order for Find By Attribute Value is now lexographical
Bug Fixes
- When exporting node positions, export the non-scaled values
- Fix various table row selection issues
- Reset UI state when switching from Find By Attribute Value to normal Find
- Fix Copy Column To Clipboard copying the wrong data after a sequence of selection changes
- Fix crash when removing an attribute
- Fix keyboard interaction with attribute list UI
- Fix correlation plot context menu state inconsistencies
- Fix Save As Images By… misbehaving with respect to file names with multiple dots in them
- Fix various subtle renderer transition bugs, particularly when several transitions are started/interrupted in rapid succession
- Fix handling of some load failure modes
- Fix crash involving attribute selection UI component
- Fix rendering of fonts with overlapping strokes (most obvious on MacOS)
- Fix font selection not operating correctly in some circumstances
- Fix last row of attribute table being obscured by horizontal scroll bar
- Fix some visual options not being immediately applied
- Fix crash when trying to load single column correlation data tables
- Fix re-enabling a visualisation with a lost attribute causing errors
- Fix operation of context sensitive menu items on MacOS
- Fix locked transforms displaying 'nan' for drop down list parameters
- Fix potential crash in correlation annotation rendering
- Fix editing of attributes not undoing correctly
- Fix custom visualisation mapping controls being available when attribute has no range
Other
- General improvement to operation on high DPI displays, particularly with fractional scaling factors as seen on Windows
- Improve node attribute table performance when node selection changes
- Selection outlines of transparent graph elements are now rendered transparent too
- Update to Qt 6.7.0
Release 5.0
5.0
Loading
- Allow for loading adjacency matrices from .txt files
- Improve error message when loading inconsistent tabular data files
- Improve file content identity algorithm
- Adjacency matrix loaders can now be cancelled
Transforms and Visualisations
-
Add Type Cast transform, to convert attribute types
-
Add Shared Text visualisation channel, enabling the textual annotation of groups of nodes
Attributes
-
Add facility to edit the type and description of user defined attributes
-
Warnings are now shown regarding duplicate values when importing attributes
Correlation
-
Add Find Rows of Interest functionality, identifying rows that correlate with selected columns
-
Add ability to fix correlation plot sort order when Data Value sort is in force
-
Add Save As Images By… → Row option to output an image for each selected table row
-
Add functionality to import column annotations onto an existing correlation plot
-
High resolution rendering of the correlation plot on high DPI displays
-
Add antilog functionality to correlation plot
-
Enable log and antilog correlation scaling methods in situations where they were previously unavailable
-
Add Softmax data normalisation method to correlation loader
-
Warnings are now shown regarding duplicate values when importing column annotations
Miscellaneous
-
WebAssembly support
-
Add option to load an external node layout using the same file format as produced by the export option
-
A command line headless mode is now available that enables the creation of .graphia files without manually needing to select parameters in the UI; useful for batch processing on servers
-
Add Crop To Selection option to the attribute data table, which synchronises the node selection with the current table row selection
-
Add View → Show Edges option, which allows for disabling the rendering of edges entirely
-
Text size can now be altered on-the-fly in the Layout Settings panel
-
Double clicking the background in overview mode now resets the view
-
Ease restrictions on zooming in overview mode
-
Add Focus Selection option to Table menu, which will focus the nodes corresponding to the current table row selection
-
Add Auto Focus option, which does the same as the above, except automatically whenever the row selection is changed
-
Better handling of operating system UI theming, including Dark Mode on platforms that support it
-
Default sort order for Find By Attribute Value is now lexographical
Bug Fixes
- When exporting node positions, export the non-scaled values
- Fix various table row selection issues
- Reset UI state when switching from Find By Attribute Value to normal Find
- Fix Copy Column To Clipboard copying the wrong data after a sequence of selection changes
- Fix crash when removing an attribute
- Fix keyboard interaction with attribute list UI
- Fix correlation plot context menu state inconsistencies
- Fix Save As Images By… misbehaving with respect to file names with multiple dots in them
- Fix various subtle renderer transition bugs, particularly when several transitions are started/interrupted in rapid succession
- Fix handling of some load failure modes
- Fix crash involving attribute selection UI component
- Fix rendering of fonts with overlapping strokes (most obvious on MacOS)
- Fix font selection not operating correctly in some circumstances
- Fix last row of attribute table being obscured by horizontal scroll bar
- Fix some visual options not being immediately applied
- Fix crash when trying to load single column correlation data tables
- Fix re-enabling a visualisation with a lost attribute causing errors
- Fix operation of context sensitive menu items on MacOS
- Fix locked transforms displaying 'nan' for drop down list parameters
- Fix potential crash in correlation annotation rendering
- Fix editing of attributes not undoing correctly
- Fix custom visualisation mapping controls being available when attribute has no range
Other
- General improvement to operation on high DPI displays, particularly with fractional scaling factors as seen on Windows
- Improve node attribute table performance when node selection changes
- Selection outlines of transparent graph elements are now rendered transparent too
- Update to Qt 6.7.0
Release 4.2
4.2
Bug Fixes
- Fix node selection not being reflected in correlation plot
Release 4.1
4.1
Bug Fixes
- Fix clustering algorithms labelling clusters in an arbitrary order when they happened to be the same size
- Fix crashes and data corruption related to favourite transforms
- Fix crash that occurred when cancelling a load at a particular point
- Fix crash that occurred when removing a table column
- Restore attribute selection keyboard based interface from 3.x
- Fix instances where the context menus on some UI elements would get out of sync with respect to their main menu equivalents
- Fix visualisation descriptions not appearing in the visualisation creation dialog
- Fix various issues with filenames when saving plot images
- Fix crash that occurred on MacOS when exiting
- Fix various assorted issues with the data table
Release 4.0
4.0
Loading
- When there is a choice of file type or plugin to use, said choice can be set as a default, avoiding future prompts
- The file type selector of the file open dialog is now used to guide file type and plugin selection
- The pairwise file loader now has a front end that allows for the configuration of columns within the source data table, so it's no longer necessary for pairwise files to be strictly 2 or 3 columns
Transforms and Visualisations
-
Add facility to select favourite transforms, which are displayed at the top of the transform list
-
Add mechanism to save sets of transforms and visualisations for later recall
Attributes
- There is now an option (on the Misc tab of the Options dialog) to change the way Find By Attribute Value sorts the list of possible attribute values; it can now be done alphanumerically, in addition to the normal behaviour of sorting from the large to small set size
Correlation
-
The correlation plot columns can now be sorted by data value
-
The correlation plot is now vertically scrollable when it's too large for its container - i.e. when there are many column annotations
-
In the correlation loader, input data can now be clipped against a constant, or by Winsorization
-
Correlation plot columns can now be sorted by hierarchical clustering, using the SLINK method with a Euclidean distance measure
-
Add a Filtering option to correlation parameters, more specifically enabling the ability to filter edges using the k-Nearest Neighbours strategy; this is particularly useful with datasets that are extremely correlated, where traditional thresholding cannot adequately differentiate between rows
-
Replace the Initial Transforms section of the correlation loader with Template, allowing for a more flexible and customisable means of appending additional transforms and visualisations
-
Add ability to save correlation plot images on a per attribute value basis, e.g. saving one image per cluster
Miscellaneous
- In plugins that have a data table, the source, target and neighbour rows can now be selected
- Graph metrics display now reflects the visible component, when in component mode
- Add option to interpret trackpad pan gestures as zooming; this is primarily useful for users of the Apple Magic Mouse, where it's more intuitive for scrolling vertically to map to zooming
Bug Fixes
- Bring MCL inline with the reference implementation by not skipping single node clusters
- Fix pairwise exporter introducing extra quotes into its output
- Fix crash that occurred when changing the graph with the Find interface active
- Prevent showing the main context menu over the Find interface
- Fix delay in showing Find By Attribute interface when an attribute has a large quantity of values
- Fix deadlock/crash when cancelling a command
- Fix initial dimensions on screenshot capture preset often being wrong
- Fix renderer not updating when focused labelling enabled
- Use the correct file extension when saving a non-native format
- Fix correlation plot data value sorting occasionally behaving oddly when node selection changes
- Fix changes to transform flags (locked, pinned) not being properly undoable
- Fix blank graph rendering in some rare circumstances
- Fix potential crash that might occur when changing the find attribute multiple times
- Fix graph size estimate plot inappropriately showing "Empty Graph" in some circumstances
- Fix poor behaviour when loading correlation data with anonymous columns
- Fix "ghost" node selection box appearing after an unusual combination of mouse drags and key presses
- Fix temporary lock-up at the end of a transform application
- Fix visually overlapping components when nodes move from one component to another
- Fix crash when reloading certain save files where nodes have been manually deleted
Other
- Move code base to Qt 6/Qt Quick 2 (Please report bugs/regressions)
- macOS builds now take advantage of Apple M1 hardware
- Capture more debug output on Windows
- Improve video driver crash detection
- Collect more information when a std::exception based crash occurs
- Improve macOS update script to deal with the case where the target .app has been renamed
- Improve installer error message on macOS when target directory is not writeable
- Allow selection of alternative UI themes where available
Release 3.2
Bug Fixes
- Improve stability across all platforms, particularly with respect to the use of enrichment analysis
- Fix operation of Copy Column To Clipboard functionality
Linux
- Improve compatibility across a greater number of distributions
Release 3.1
Bug Fixes
- Fix display not updating when focused labelling option used
- Fix occasional incorrect screenshot dimensions
- Fix text style options sometimes not taking effect immediately
- Fix adjacency matrix loader not setting node names
- Fix crash that occurred when the graph changed during a find
- Fix layout getting stuck on certain contracted graphs
- Fix crash that occurred sometimes when cancelling a command
- Fix transform flags (e.g. locked or pinned) not being properly recorded as an undoable step
- Fix GML saver creating key names with a leading digit (which is prohibted by the standard)
- Fix various issues with the GraphML saver
- Fix crash that occurred if the application is closed at a specific point of a load
- Fix import of attributes where the keys are large integers
- Fix crash when plotting an IQR with zero outliers
- Fix crash that occurred when flipping between find types multiple times
- Fix blank plugin window when multiple tabs open
Release 3.0
Loading
-
Downloadable files can now be opened directly, either by using the Open Url option in the File menu, or by dragging and dropping hyperlinks onto the main window
-
A Graphia specific URL scheme is now registered so that the application may now be opened by clicking special hyperlinks; these can be created using the Link Generator
-
Tabular lists of node pairs can now be loaded from pairwise CSV, TSV, SSV and XLSX files
-
Loading Cytoscape eXchange files is now possible, as used on NDex
-
Graphviz .dot files may now be loaded
-
When loading from an adjacency matrix, it is now possible to choose to discard edges based on edge weight, and to skip double edges where the matrix is symmetric
Transforms
- Added Forward Attribute transform; for graphs with contracted edges, this will copy the selected attribute's values to all elements hidden by the contraction
- Added Average Attribute transform; create a new attribute whose values are determined by averaging the values of a numerical attribute on the basis of a categorical attribute - this allows for e.g. finding a cluster's average attribute value
- Clustering algorithms now create additional node attributes that reflect the size of the clusters in which the respective nodes belong, effectively allowing filtering operations on the size of clusters
Visualisations
-
Visualisations that use deleted source attributes can now have their source attributes changed, in contrast to the prior behaviour where a broken visualisation would need to be deleted and recreated
-
For numerical visualisations, the mapping of input value to output value can now be fine tuned
-
An Apply button is now present on the gradient, palette and numeric mapping visualisation dialogs, for immediate preview of any changed settings
Attributes
-
Attributes can now be imported, accessible via Tools → Import Attributes From Table…
-
User defined attributes can now be removed if desired, accessible via Tools → Remove Attributes…
-
Attributes can now be cloned, accessible via Tools → Clone Attribute…
-
User defined attributes can now be edited, accessible via Tools → Edit Attribute…
-
There is now search functionality in all the places where attributes are chosen; this is most useful when selecting a Data Value attribute in the case where there are many
-
The node attribute table now has a context sensitive menu that provides options relevant to the clicked attribute
-
The contents of a column from the node attribute table can now be copied to the clipboard, accessible by the context menu
Layout
-
Layout settings are now accessible via a toolbar button
-
Node and edge sizes are now saved in the .graphia file and are adjustable via Layout Settings
-
Layout settings can now be saved as named presets, for quick access to frequently used settings
Enrichment
- When viewing enrichment results, the chosen attribute names are now used for the column headers
- The enrichment results table is now formatted in a way that improves Microsoft Excel's interpretation of it, when exported
- Enrichment data columns are now correctly named regarding the the metrics actually employed
Correlation
-
Correlating tables of discrete values is now possible, using the Jaccard Index or Simple Matching Coefficient algorithms
-
For continuous correlation, the Euclidean Distance, Cosine Similarity and Biweight Midcorrelation (Bicor) algorithms are now available
-
Column annotation colours are now assigned by palette rather than by hashing the string value
-
Numerical column annotations are now displayed using a gradient
-
In the data plot, values can now be scaled by an attribute value
-
The epsilon used when log scaling data is now computed to use an appropriately sized value rather than a fixed constant
-
When loading correlation data with duplicate attribute column names, these are now considered separately rather than overwriting each other
-
The data plot can now be panned by dragging and zoomed using the mouse wheel
-
In the plot, data can now be combined into IQR boxplots based on one or more annotations, enabled by selecting Group By Annotation in the Plot menu
-
Furthermore, when Group By Annotation is enabled there is now another option to colour the IQR boxes with a user selected annotation
-
When displaying IQR plots, outliers can now be disabled by toggling the Show Outliers menu option
-
Various buttons have been added to the tool bar to control the correlation plot
-
Data can now be log scaled when rendering IQR boxplots
Miscellaneous
-
Hyperlinks in table cells are now clickable and some basic HTML 3.2 can be displayed
-
A log is now made of the steps taken in the graph's creation, accessible via Tools → Show Provenance Log…
-
There is now an option to stay in component mode when finding, by default off
-
The Latest Changes option was added to the Help menu, which shows any new changes present in the running version
Bug Fixes
- Fix loading GML files where the edges precede the nodes
- Fix crash when loading from empty files
- Fix Matlab loader not handling some forms of adjacency matrix
- Fix empty values being included in enrichment results
- Fix plot grid lines getting incorrectly enabled in some circumstances
- Fix missing column annotations where there were a large number of unique values
- Fix possibility of dismissing the correlation parameters dialog before the data frame had been found
- Fix occasionally ambiguous Esc key shortcut
- Fix crash involving search and selection
- Fix crash caused by graph visuals being altered during a graph change
- Fix palette editor behaviour when there are few assignable values
- Fix attribute ranges and shared values not getting updated in some circumstances
- Fix transforms and visualisations not being refreshed when referenced attribute values change
- Fix various issues involving attributes that change values and/or type during transforms
- Fix malformed tab titles when the source file name contains periods
- Fix wrong initial save file name
- Fix empty graph warning being displayed before correlation estimate completes
- Fix visualisation attribute list not updating following attribute changes
- Fix crash on correlation plot when moving the mouse along a particular path
Performance
- Generally improved performance when there are a large number of components
- Add option to disable multisampling, yielding a performance improvement
- Add text to the Options dialog on macOS, suggesting opening the application in Low Resolution Mode for a further performance improvement
- Improve performance of attributes model
- Improved correlation data plot IQR rendering performance
- Redundant correlation plot redraws have been reduced
- Improve correlation column annotation rendering performance
- Improve correlation column annotation sort performance
Linux
- An XDG desktop item is now automatically created, so Graphia will appear in system menus
Release 2.2
Bug Fixes
- Fix Visual Studio runtime not being copied to installation directory on Windows
Release 2.1
Bug Fixes
- Fix GraphML parser failing on some input files
- Fix node selection not working after a specific sequence of transforms
- Fix crash that occurred when an attribute was destroyed and recreated with the same name, but a different element type
- Fix crash that occurred after selecting some nodes, then cycling a transform a number of times
- Fix 'Remove Leaves' transform behaving inconsistently with respect to singletons
- Prevent the possibility of creating invalid transforms, in some circumstances
- Fix double clicking a transform name in the transform creation dialog disabling subsequent initial mouse click
- Fix various renderer crashes
- Fix empty values being included in enrichment results
- Fix enrichment result table cells being interpreted as dates in Microsoft Excel
- macOS
- Fix help tool tips being badly sized
- Fix flickering of windows when adjusting the correlation plot
- Fix the WebSearch plugin being broken
- Linux
- Improve distribution compatibility
- Fix crashes with WebSearch plugin on some platforms