Using transcript_name instead of transcript_id
Use the “transcript_name” identifier as the y-axis labels instead of using “transcript_id”
[1]:
import RNApysoforms as RNApy
[2]:
## Path to your ENSEMBL GTF file, counts matrix file, and metadata file
ensembl_gtf_path = "../../tests/test_data/Homo_sapiens_chr21_and_Y.GRCh38.110.gtf"
counts_matrix_path = "../../tests/test_data/counts_matrix_chr21_and_Y.tsv"
metadata_path = "../../tests/test_data/sample_metadata.tsv"
## Process annotation and expression matrix
annotation = RNApy.read_ensembl_gtf(ensembl_gtf_path)
expression_matrix = RNApy.read_expression_matrix(expression_matrix_path=counts_matrix_path,
metadata_path=metadata_path,
cpm_normalization=True, relative_abundance=True)
## Add transcript name, make sure to use the `.unique` so you don't create a bunch of duplicate entries
expression_matrix = expression_matrix.join(annotation[["transcript_id", "transcript_name"]].unique(),
on="transcript_id", how="inner")
## Filter APP data
app_annotation, app_expression_matrix = RNApy.gene_filtering(annotation=annotation, expression_matrix=expression_matrix, target_gene="APP",
order_by_expression=True, keep_top_expressed_transcripts=5,
order_by_expression_column="counts", transcript_id_column="transcript_name")
# Rescale introns
app_annotation = RNApy.shorten_gaps(app_annotation)
## Make traces for APP figures
traces = RNApy.make_traces(annotation=app_annotation, expression_matrix=app_expression_matrix,
x_start="rescaled_start", x_end="rescaled_end",
y='transcript_name', annotation_hue="transcript_biotype",
hover_start="start", hover_end="end",
expression_columns=["counts", "relative_abundance"],
expression_hue="AD status", marker_size=3, arrow_size=6,
show_box_mean=False, marker_jitter=0.7)
## Make figure
fig = RNApy.make_plot(traces=traces, subplot_titles=["Transcript Structure", "Counts", "Relative Abundance (%)"],
width=1200, height=500, boxgap=0.25, boxgroupgap=0, column_widths=[0.5, 0.25, 0.25])
## Show figure
fig.show()
Notes:
You can click on the legend items to make figure elements appear and disappear.
The legend title will get grayed out when clicking on the first legend item. I could not find a workaround for that with the current plotly release (version 5).
The hovering for exons and CDS works best if you hover your mouse over the corners of the CDS/exon boxes.