A computer implemented method for recolouring a vector graphic, the method comprising: processing, by a processing unit, the vector graphic to determine a set of file colours, each file colour in the set of file colours being a colour used in a vector graphic design element defined by the vector graphic; processing the vector graphic to determine a plurality of dominant colours defined by the vector graphic, wherein processing the vector graphic to determine the plurality of dominant colours comprises: rasterising the vector graphic to generate raster data; processing the raster data using a clustering algorithm to determine a plurality of clusters calculating a representative cluster colour for each cluster; and determining each representative cluster colour to be a dominant colour; generating a set of file colour groups by associating each file colour in the set of file colours with a file colour group, each file colour group being associated with a dominant colour defined by the vector graphic, wherein associating a given file colour with a particular dominant colour comprises: calculating distances between the given file colour and each of the dominant colours; and associating the given file colour with the particular dominant colour that the given file colour is closest to; receiving, via an input device, colour change input data defining a particular file colour group and a new colour; and in response to receiving the colour change input data: determining a colour transformation describing a change to the new colour; for each file colour associated with the particular file colour group, calculating a corresponding transformed file colour using the colour transformation; recolouring the vector graphic by replacing each file colour associated with the particular file colour group with its corresponding transformed file colour; and displaying, on a display, the recoloured vector graphic. processing, by a processing unit, the vector graphic to determine a set of file colours, each file colour in the set of file colours being a colour used in a vector graphic design element defined by the vector graphic; processing the vector graphic to determine a plurality of dominant colours defined by the vector graphic, wherein processing the vector graphic to determine the plurality of dominant colours comprises: rasterising the vector graphic to generate raster data; processing the raster data using a clustering algorithm to determine a plurality of clusters calculating a representative cluster colour for each cluster; and determining each representative cluster colour to be a dominant colour; rasterising the vector graphic to generate raster data; processing the raster data using a clustering algorithm to determine a plurality of clusters calculating a representative cluster colour for each cluster; and determining each representative cluster colour to be a dominant colour; generating a set of file colour groups by associating each file colour in the set of file colours with a file colour group, each file colour group being associated with a dominant colour defined by the vector graphic, wherein associating a given file colour with a particular dominant colour comprises: calculating distances between the given file colour and each of the dominant colours; and associating the given file colour with the particular dominant colour that the given file colour is closest to; calculating distances between the given file colour and each of the dominant colours; and associating the given file colour with the particular dominant colour that the given file colour is closest to; receiving, via an input device, colour change input data defining a particular file colour group and a new colour; and in response to receiving the colour change input data: determining a colour transformation describing a change to the new colour; for each file colour associated with the particular file colour group, calculating a corresponding transformed file colour using the colour transformation; recolouring the vector graphic by replacing each file colour associated with the particular file colour group with its corresponding transformed file colour; and displaying, on a display, the recoloured vector graphic. determining a colour transformation describing a change to the new colour; for each file colour associated with the particular file colour group, calculating a corresponding transformed file colour using the colour transformation; recolouring the vector graphic by replacing each file colour associated with the particular file colour group with its corresponding transformed file colour; and displaying, on a display, the recoloured vector graphic.