Creates conformation plots showing structure-MW relationships from multi-detector SEC data (Mark-Houwink plots, Rg-MW scaling).
Usage
plot_sec_conformation(
data,
type = c("rg_mw", "eta_mw", "rh_mw"),
mw_col = "mw",
y_col = NULL,
sample_id = NULL,
show_fit = TRUE,
show_exponent = TRUE,
compare_linear = NULL,
...
)Arguments
- data
A data frame containing SEC results with MW and conformation data (Rg, intrinsic viscosity).
- type
Type of conformation plot:
"rg_mw": Radius of gyration vs molecular weight (default)"eta_mw": Intrinsic viscosity vs molecular weight"rh_mw": Hydrodynamic radius vs molecular weight
- mw_col
Name of molecular weight column. Default is
"mw".- y_col
Name of y-axis column. If
NULL, auto-detected based on type.- sample_id
Column name containing sample identifiers.
- show_fit
Logical. Show power-law fit line? Default is
TRUE.- show_exponent
Logical. Annotate slope/exponent on plot? Default is
TRUE.- compare_linear
Data frame with linear reference polymer for branching comparison. Should have same structure as main data.
- ...
Additional arguments passed to
ggplot2::geom_point().
Details
Conformation plots reveal polymer architecture:
Rg-MW (radius of gyration): Log-log slope indicates conformation:
0.33: Compact sphere
0.5-0.6: Random coil (linear polymer in good solvent)
1.0: Rigid rod Branched polymers show reduced Rg at same MW compared to linear.
eta-MW (Mark-Houwink):
The relationship [eta] = K * M^a where:
K and a are Mark-Houwink parameters
a is approximately 0.5-0.8 for typical polymers
Branched polymers show lower
[eta]at same MW
See also
Other sec-visualization:
autoplot.sec_results(),
plot_sec(),
plot_sec_calibration(),
plot_sec_chromatogram(),
plot_sec_composition(),
plot_sec_multidetector(),
plot_sec_mwd(),
sec_results()
Examples
if (FALSE) { # \dontrun{
# Rg-MW plot from MALS data
plot_sec_conformation(processed_data, type = "rg_mw")
# Mark-Houwink plot
plot_sec_conformation(processed_data, type = "eta_mw")
# Compare branched to linear reference
plot_sec_conformation(
branched_data,
compare_linear = linear_reference
)
} # }