- fix default method setting in
createNetwork()
for "delaunay" networks - fix y spacing of
makePseudoVisium()
makePseudoVisium()
micron_scale
(multiplicative scalefactor to get micron scaled values) supercedesmicron_size
which used the inverse.
buffer()
forgiottoPolygon
,giottoPoints
,spatLocsObj
. Default is to crop by voronoi borders withsettleGeom()
settleGeom()
forgiottoPolygon
andSpatVector
for finding non overlapping borders determined by voronoi
- stop exporting deprecated internal accessors
- terra requirement raised to 1.7.41 for
minCircle()
- fix
dimnames()
for some subobjects - fix
joinGiottoObject()
for gobjects with only poly and point data #233 - fix
joinGiottoObject()
for gobjects with image intensity overlaps features - fix subsetting error due to expression
matrix
drop tonumeric
when only one cell is left shift_vertical_step
andshift_horizontal_step
args increateGiottoPolygonsFromMask()
when numeric now shift by steps based on the dims of the image instead of just by the numerical value provided.- fix feature metadata not being mixedsorted after join
- fix non-inclusive subsetting when not all minmax values are supplied to
subsetGiottoLocs()
- fix
giottoAffineImage
loading after being saved
- python packages to install through pip is now settable in
installGiottoEnvironment()
#224 giotto
initialize()
and slot checking behavior can be toggled now using'giotto.init'
and'giotto.check_valid'
options. #946 by rbutleriiisetGiotto()
now only initializes and performs checks once all items are added if alist
input is provided.instructions()
with no args will now callcreateGiottoInstructions()
. You can also supply named args.instructions(gobject, param)
andinstructions(gobject, param)<-
will now work forgiottoInstructions
objects for convenience.[
,[[
,$
,$<-
, andsubset()
forgiotto
see?GiottoClass::subset_giotto
subset
forspatIDs()
andfeatIDs()
objName()
,spatUnit()
,featType()
generics now returnNA_character_
instead of erroring when used on unsupported classes.ext()
andext<-()
can now be used to get and set extent ofaffine2d
rownames()
,colnames()
,dimnames()
forgiotto
spatValues()
can get values from multiple spatial units.createGiottoPolygonsFromMask()
now works with anythingterra::rast()
can readcreateGiottoLargeImage()
now works with anythingterra::rast()
can read
sliceGiotto()
for pulling out specific spatial units and feature types as independentgiotto
objectssplitGiotto()
for splitting a Giotto object into a list of Giotto objects based on a cell metadata columnas.list()
method forgiotto
to dump the data as a list of subobjectsXY()
andXY<-()
for accessing and setting coordinate values of subobjects asmatrix
- terra
convHull()
,minRect()
,minCircle()
for Giotto spatial vector classes area()
forSpatVector
andgiottoPolygon
set_giotto_python_path()
will now also initialize python env to set by default and print which python env is active, but otherwise do nothing if any python env has already been initialized.- deprecated
readGiottoInstructions()
,showGiottoInstructions()
,changeGiottoInstructions()
,replaceGiottoInstructions()
in favor ofinstructions()
generic
- intensity images now automatically scale to estimated highest value
giottoPolygon
plot()
defaultmax_poly
raised to1e6
giottoInstructions
no longer lose class when specific params are replacedometif_to_tif()
now checks for imagecodecs package as wellanndataToGiotto()
andgiottoToAnndata
now check for anndata package as well.- fix
joinGiottoObjects()
"z_stack"
join method - fix error in documentation #214 by shaojunyu
- fix error in
installGiottoEnvironment()
#1006 by 13954380607
print()
method forgiottoInstructions
rbind()
forspatLocsObj
- hotfix anndata matrix support #216 by wwang-chcn
- fix flipping issue with
giottoAffineImage
for certain affine transforms
missing
method foraffine()
instantiates anaffine2d
object
- python environment installation and how it relates to default settings such as .condarc may have changed.
giottoImage
name
slot now requirescharacter
and will not acceptNULL
loadGiotto()
no longer errors with similarly named spat_units or feat_types (e.g. "cell" and "new_cell" would previously throw an error)- fix in
giottoToSpatialExperiment()
- fix for
giottoToSeuratV5
for cosmx mini dataset #989 by guillermoturiel - fix issue with prints in
createGiottoCosMxObject()
#960 by GBeattie
verbose
param forcreateNearestNetwork()
checkGiottoEnvironment()
in addition to full filepaths, also now supports name of environment or installation directoryinstallGiottoEnvironment()
,removeGiottoEnvironment()
now haveconda
param for setting path to conda executable andenvname
param for specifying environment by nameinstallGiottoEnvironment()
now hasconfirm
param for skipping path input checkst()
forgiotto
now affects images as well.
affine()
forgiottoPolygon
,giottoPoints
,spatLocsObj
,giotto
shear()
forgiottoPoints
,giottoPolygon
,spatLocsObj
,affine2d
affine2d
class for accumulating linear transforms to be used withaffine()
initialize()
,[
,$
,show()
,plot()
, methods foraffine2d
spin()
,rescale
,spatShift()
,affine()
,flip()
,shear()
t()
methods foraffine2d
giottoAffineImage
class for just-in-time affine transformed imagesinitialize()
, method forgiottoLargeImage
initialize()
,ext()
,crop()
,rescale()
,spatShift()
,plot()
, methods forgiottoAffineImage
rescale()
method forgiottoImage
spin()
,shear()
,affine()
,flip()
,t()
methods forgiottoAffineImage
andgiottoLargeImage
(which converts togiottoAffineImage
)as()
conversion fromgiottoLargeImage
togiottoAffineImage
.get_centroid_xy()
internal for getting numeric centroid xy values of any object that responds toext()
.bound_poly()
internal for generating a dummy polygon from the extent of any object that responds toext()
.aff_shift_2d()
,.aff_shift_2d<-()
,.aff_linear_2d
,.aff_linear_2d()<-
internals for accessing and manipulating affine matrices
- allow passing of additional params with
setGiotto()
with...
spatShift()
can now perform z shifts when startspatLocsObj
has no z information- fix bug in
joinGiottoObjects()
after v0.3.0 where it looks for the now non-existent@largeImages
slot - fix bug in
.update_image_slot()
after v0.3.0 where a NULL@largeImages
slot will result in an error - fix bugs in
spatShift()
andrescale()
methods forgiotto
when setting a defaultspat_unit
andfeat_type
joinGiottoObjects()
extent detection and xshift defaults now depend onext()
of the gobject instead of any images (when available)joinGiottoObjects()
now has adry_run
param for previewing where datasets will be spatially located after the join
as()
conversion fromgiottoLargeImage
toarray
as.matrix()
method forspatLocsObj()
- deprecation of
reconnect_image_object()
,reconnect_giottoImage_MG()
andreconnect_giottoLargeImage()
internals in favor of simplerreconnect()
generic giotto
@largeImage
slot is removed. All images now exist in@images
slot.- backwards compatibility for S3
spatialNetworkObj
removed - Not finding a specific
spatialNetworkObj
withgetSpatialNetwork()
is now upgraded to an error instead of returningNULL
to be in line with other accessors. - backwards compatibility for bare
data.table
spatial coordinates information is removed
- fix
plot()
params passing forgiottoPolygon
whentype = "centroid"
- fix
ext()
output forgiottoImage
spatShift()
andrescale()
now also affect gobject attached images #945 by rbutleriii
- use faster
terra::rasterize()
andterra::plot()
instead ofscattermore::scattermoreplot()
forgiottoPoints
plot()
method plot()
giottoPoints
method now plots density whendens = TRUE
show_max
param indensity()
andhist()
to plot the image object'smax_window
setting.identify_background_range_polygons()
now finds any polygons larger than a threshold percentage than the overall extent of theSpatVector
input.ext()
can now be used withgiotto
objects #945 by rbutleriiiext()<-
can now be used withgiottoImage
as
conversion fromgiottoLargeImage
togiottoImage
(giottoImage
is sampled)crop()
works forspatialNetworkObj
- new
spatValues()
to get specific values from agiotto
object indata.table
format - new
ometif_to_tif
to convert between .ome.tif and .tif - new
terra::density()
andterra::hist()
wrappers forgiottoLargeImage
- fix
saveGiotto
withoverwrite = TRUE
#870 by rbutlerii - fix
plot()
method param passing forgiottoLargeImage
. Ensure access to terra params
createGiottoPoints
data.frame
method can now select which columns to use withx_colname
,y_colname
,feat_ID_colname
paramsgiotto
now responds to spatial manipulation generics:t()
,flip()
,rescale()
,spatShift()
,spin()
spatUnit()
andfeatType()
are now vectorized- internal
get_spatial_locations_list()
andget_spatial_network_list()
accessors now accept ":all:" token to get all available, ignoring spat_unit
- fix
createGiottoPolygonsFromMask()
IDs being applied out of sync to mask values - fix
createGiottoPolygon()
character
method dispatch forraster
inputs - remove unused
fix_multipart
param increateGiottoPolygonsFromMask()
- fix
giottoPolygon
ID caching afterrbind()
createGiottoPolygonsFromMask()
now hasID_fmt
param for finer control of automaticpoly_ID
generation.flip_spatvect()
internal for flippingSpatVector
across arbitrary x and y vals
giotto
slotversions
supercedesOS_platform
. Used for tracking GiottoClass version.
- fix
subsetGiotto
unusedon
argument - fix
giotto
object saving when image intensities overlaps data are present. - fix
exprObj
show()
for small matrices - fix
giotto
calculateOverlap()
method when working with image intensities data.
createNetwork()
hub function for creation of Giotto NN and spatial networks directly from matrices. Mainly for developers and advanced users.edge_distances()
for calculating euclidean distances from numeric m x nmatrix
(nodes) and adata.table
with from and to cols that define node connections.
addCellMetadata()
andaddFeatMetadata()
now support merging on the names of provided vector and factor data with metadata cell_ID/feat_ID.
- fix unexpected sorting in
addCellMetadata()
andaddFeatMetadata()
#853 by rbutleriii
init_gobject
param inloadGiotto()
to control whether object initialization is also performed after load- vignette for image tools
- ID sorts now use
gtools::mixedsort()
#853 by rbutleriii - more subobjects respond to
colnames
,rownames
,dimnames
plot()
andshow()
now handle 3DspatLocsObj
- Added:
max_window
andcolors
slots togiottoLargeImage
. UseGiottoClass:::.update_giotto_image()
to update outdated objects. - Added:
.bitdepth()
internal function to detect image bitdepth from sampled values - Added: re-export
getMonochromeColors()
from GiottoUtils - Added:
giottoPolygon
,giottoLargeImage
method forcalculateOverlap()
- Added: vignette for working with spatial classes
- Added:
output
param to.spatraster_sample_values()
. Can now return as sampleddata.frame
,array
,magick
,EBImage
- param fixes in raster
calculateOverlap()
workflows
- Removed:
getRainbowColors()
to GiottoUtils - Removed:
get_prev_fname()
andget_args()
to GiottoUtils - Removed:
aggregateStacksPolygonsOLD()
- Added:
.gstop()
for GiottoClass specific errors - Added:
plot()
method fordimObj
- Added:
ncol()
andnrow()
methods fordimObj
- Added:
dimObj
additional info now accessible using$
and$<-
- Added:
spatEnrObj
cols now accessible using$
and$<-
- Added:
evaluate_input()
as exported wrapper forevaluate
functions - Added:
as.polygons()
data.frame
method for correctly formatted data.tables (replaces internaldt_to_spatvector_polygon()
) - Added:
as.polygons()
data.frame
method for correctly formatted data.tables (replaces internaldt_to_spatvector_points()
) - Added: autocompletes for
$
withspatLocsObj
,spatEnrObj
,dimObj
,cellMetaObj
,featMetaObj
,giottoPolygon
,giottoPoints
- Added:
toplevel_params
param tosubsetGiottoLocs()
- Added:
spin
,spatShift
,rescale
methods fordata.frame
- Fixed: Provenance now not accidentally created as a list in
addSpatialCentroidLocations()
- Changed:
giottoPolygon
plot()
now automatically switches to centroid plotting with more than 1e4 polys - Changed: Package internal functions now have
.
prefix
- Giotto subsetting rework
- Added:
terraVectData
as virtual parent class forgiottoPolygon
andgiottoPoints
classes - Added:
$
and$<-
methods forterraVectData
- Added:
ext<-()
method forgiottoPolygon
,giottoPoints
- Added:
crop()
method forgiottoLargeImage
,giottoPoints
- Added:
[
subsetting forgiottoPoints
andgiottoPolygon
with numerical, logical, and character (by ID) - Added:
as.sf()
andas.stars()
converters forgiottoPoints
andgiottoPolygon
- Added:
setGiotto()
generic - Added:
gap
param totessellate()
which introduces a variable gap between the polygons tessellated - Added:
triGrid()
- Added:
orthoGrid()
- Added: DelayedMatrixStats to suggests
- Added:
calculateOverlap()
andoverlapToMatrix()
as generic functions for feature and image overlap aggregations
- Improved: performance of gefToGiotto()
- Updated:
spatIDs()
andfeatIDs()
methods forgiottoPolygon
andgiottoPoints
to allow returning non-unique IDs - Added: check for
plot()
whengiottoPolygon
orgiottoPoints
objects contain no geometries - Added: warning for
crop()
whengiottoLargeImage
,giottoPolygon
,giottoPoints
objects are being cropped with an extent that does not include any information - Changed: Conversion of
createGiottoPoints()
to a generic function - Deprecate:
radius
param in favor ofshape_size
fortessellate()
- Fixed: python
.install_github_link_pip()
param - Fixed: python
create_AnnData()
added toglobals.R