This simple function takes in a data table and reorders groups (categorical variables or factors) to be plotted along the X-axis in a user-defined order.
table_x_reorder(data, xcol, OrderX, ...)
a data table
name of column in above data table (provided within quotes) whose levels are to be reordered
a vector of group names in the desired order
any additional arguments for
This function returns a data frame with a selected column converted into factor with reordered levels.
It uses two base R functions:
as.factor to first force the user-selected column into a factor, and
factor that reorders levels based on a user-provided vector.
#reorder levels within Genotype new_data <- table_x_reorder(data_t_pratio, xcol = "Genotype", OrderX = c("KO", "WT")) #compare plot_scatterbox(data_t_pratio, Genotype, Cytokine) #with plot_scatterbox(new_data, Genotype, Cytokine) #also works within the plot call plot_scatterbox(data = table_x_reorder(data_t_pratio, xcol = "Genotype", OrderX = c("KO", "WT")), xcol = Genotype, ycol = Cytokine)