Changelog
Source:NEWS.md
ggExametrika 1.1.1
New Features
-
plotArray_gg()gainsborderandborder_linewidtharguments (opt-in). Whenborder = TRUE, a rectangularpanel.borderis drawn around each of the original and clustered panels so that the two panels are visually distinguishable when shown side-by-side. Passing a character string tobordersets the border colour directly (e.g.border = "gray40"). The default isFALSE, so the v1.1.0 unbordered look is preserved unless the user opts in.
Breaking Changes
- Rename misspelled
Clusterd*arguments and labels inplotArray_gg()to the correctClustered*spelling. Affects the function argumentsClusterd->Clustered,Clusterd_lines->Clustered_lines,Clusterd_lines_color->Clustered_lines_color, the auto-generated panel title"Clusterd Data"->"Clustered Data", and the internalclusterd_plotobject. Vignettes (getting-started.Rmd,getting-started-ja.Rmd,plot-gallery.Rmd) and the test filetest-plotArray_gg.Rare updated accordingly. User code that passes the old argument names by position is unaffected, but code that names them (e.g.Clusterd_lines_color = "blue") must be updated.
Bug Fixes
- Fix value/label ordering bug in
plotCRV_gg()andplotRRV_gg(). The long-formplot_datawas built withas.vector(t(M))while the accompanyingfieldandclass/rankindex vectors assumedas.vector(M)(column-major) ordering. As a result, the value at each (field, class) or (field, rank) point was scrambled and lines no longer matched the underlyingFRPmatrix or expected scores. Affects both binary and polytomous biclustering output. Output now matches the base-Rexametrika::plot(., type = "CRV"/"RRV")numerically. - Add regression tests in
test-Biclustering-plots.Rthat verifyplot_data$valuematchesFRP[field, class](binary) and the expected-score matrix (polytomous) at every (field, class/rank) cell.
ggExametrika 1.1.0
CRAN release: 2026-04-17
New Features
- Add
plotDistractor_gg()for Distractor Analysis visualization (exametrika v1.11.0). Creates stacked bar charts showing response category proportions by rank/class, with the correct answer highlighted. Supports bothLRA(rated) andBiclustering(rated) DistractorAnalysis results. - Add
fixture_DA_lraandfixture_DA_biclusttest fixtures and 9 test cases intest-distractor-plots.R.
Bug Fixes
- Replace deprecated
sec_axis(trans = ...)withsec_axis(transform = ...)inplotTRP_gg,plotLCD_gg,plotLRD_gg(ggplot2 >= 3.5.0). - Add
\donttest{}toplotScoreFreq_ggexample to avoid CRAN time limit NOTE on Windows.
ratedBiclustering Support
- Add support for
ratedBiclusteringclass from exametrika v1.11.0 (Biclustering withdataType = "rated").- Update class validation in 11 plot functions across 5 files:
plotFRP_gg,plotTRP_gg,plotLCD_gg,plotLRD_gg,plotCMP_gg,plotRMP_gg(IRPtoCMPRMP.R),plotFCRP_gg(PolyBiclustering.R),plotArray_gg(arraytoLDPSR.R),plotScoreField_gg(ScoreField.R),plotCRV_gg,plotRRV_gg(Biclustering.R). - Update roxygen2
@param dataand@detailsdocumentation to mentionratedBiclustering.
- Update class validation in 11 plot functions across 5 files:
- Add
fixture_ratedBiclusttest fixture inhelper-setup.R. - Add 10 test cases for
ratedBiclusteringintest-PolyBiclustering-plots.RcoveringplotFCRP_gg,plotScoreField_gg,plotFRP_gg,plotTRP_gg,plotRRV_gg,plotCRV_gg,plotArray_gg,plotRMP_gg,plotLRD_gg.
ggExametrika 1.0.0
CRAN release: 2026-03-29
First CRAN Release
- Initial CRAN submission. All features from v0.0.1–v0.0.39 are included.
- 31 exported visualization functions covering IRT, GRM, LCA, LRA, Biclustering (binary/ordinal/nominal), BNM, LDLRA, LDB, and BINET models.
- All plot functions return ggplot2 objects for easy customization.
- Common plot options (title, colors, linetype, show_legend, legend_position) across all functions.
- Replace non-ASCII multiplication sign (x) with ASCII ‘x’ in comments and documentation for CRAN compliance.
- Replace all
\dontrun{}with\donttest{}in examples per CRAN review. - Make LDB/BINET examples self-contained with proper conf/edges setup.
ggExametrika 0.0.39
DAG Visualization
- Add BINET (Bicluster Network Model) DAG support to
plotGraph_gg(). This completes the DAG visualization series (BNM → LDLRA → LDB → BINET). - BINET renders an integrated graph with two node types: Class nodes (blue squares, shape=22) and Field nodes (green diamonds, shape=23) as intermediates between connected classes.
- Add
.binet_expand_graph()helper to transform BINET’s class-only graph (all_g) into an expanded graph with Field intermediate nodes for TDE-style visualization. - Extend
.dag_build_plot()with optionalnode_size_mapandlabel_size_mapparameters for variable node/label sizes by type (backward-compatible: NULL defaults preserve existing behavior). - Fix
.dag_node_colors()to support multiple node types with custom colors (positional or named vectors). - Update
.dag_build_plot()show.legendfrom hardcodedFALSEto parameter-driven, enabling proper legend display for BINET’s multi-type nodes. - Add
node_size_valandlabel_size_valto globalVariables inzzz.R. - Add comprehensive BINET test cases (7 tests) in
test-DAG-plots.R: basic output, title/colors/legend/direction common options, dual node types, and node size differentiation.
ggExametrika 0.0.38
DAG Visualization
- Add LDB (Local Dependence Biclustering) DAG support to
plotGraph_gg(). Field nodes are rendered as green diamonds (shape=23), distinct from Item nodes (purple circles, shape=21). Structure mirrors LDLRA: one plot per rank with isolated node removal. - Extend
.dag_build_plot()to support multiple node types viascale_shape_manual()+scale_fill_manual(), preparing for BINET’s mixed-type graphs. - Add LDB test fixture to
helper-setup.Rusingexametrika::LDB()withJ35S515. - Add comprehensive LDB test cases (7 tests) in
test-DAG-plots.R: basic output, title/colors/legend/direction common options, node appearance, and diamond shape verification. - Add
develop/check_ldb_visual.Rfor visual comparison of BNM/LDLRA/LDB rendering. - Fix
@param colorsroxygen documentation: update “future models (LDB/BINET)” to reflect LDB as implemented. - Simplify LDB rank count: use
data$Nrankdirectly instead of.first_non_null(data$Nrank, data$Nclass)fallback (LDB always providesNrank). - Remove duplicate
.first_non_null()definition fromplotGraph_gg.R(already defined inpalette.R).
ggExametrika 0.0.37
DAG Visualization
- Refactor
plotGraph_gg(): extract internal helper functions (.dag_node_number(),.dag_scale_factors(),.dag_item_color(),.dag_compute_layout(),.dag_build_plot()) to eliminate code duplication between BNM and LDLRA implementations. - Add LDLRA test fixture to
tests/testthat/helper-setup.RusingJ12S5000with a simple 3-rank DAG. - Add comprehensive LDLRA test cases to
tests/testthat/test-DAG-plots.R: basic output, title/colors/legend/direction common options, and node appearance parameters. - Fix node clipping in
.dag_build_plot(): add dynamicscale_x/y_continuous(expand = expansion(mult = ...))so nodes are never cut off at plot edges. Padding is proportional to node size (clamped between 0.20 and 0.45).
Bug Fixes
- Fix
plotTRP_gg()to supportnominalBiclusteringandordinalBiclusteringmodel types. Previously these models were rejected with “Invalid input” error due to class validation using exactall(class(data) %in% ...)matching. Replaced withdata$msg-based xlabel determination, consistent withplotFRP_gg()and other functions. - Update
plotTRP_gg()roxygen2 documentation to list all supported model types includingnominalBiclustering,ordinalBiclustering, andLDLRA. - Add tests for
plotTRP_gg()withordinalBiclusteringandnominalBiclusteringfixtures.
Dependencies
- Raise minimum R version from R (>= 3.5.0) to R (>= 4.1.0). The native pipe operator (
|>) and lambda syntax (\(x)) are used in some dependencies. R >= 4.1.0 is the minimum version that supports these features. - Remove
oldrel-1(R 4.4.x) from GitHub Actions CI matrix. Theggrepelpackage now requires R >= 4.5.0 on CRAN, causing dependency resolution failures on older R versions. CI now testsreleaseanddevelonly.
ggExametrika 0.0.35
Documentation
- Update exametrika dependency version references from v1.9.0 to v1.10.0 across CLAUDE.md (13 occurrences), R source TODO comments (6 files), and regenerated man pages. This reflects exametrika’s version renumbering: the previously planned v1.9.0 release will now be published as v1.10.0.
- Move visNetwork/plotGraph_interactive from v1.0.0 scope to v1.1.0+. The v1.0.0 release will focus on completing DAG visualization (LDB, BINET) with ggraph static plots only.
- Update v1.0.0 release timeline from “February 2026” to “Spring 2026, after exametrika v1.10.0 CRAN publication”.
- Add “v1.1.0 and beyond” section to CLAUDE.md roadmap for visNetwork interactive DAG editing feature.
ggExametrika 0.0.34
Documentation
- Update CLAUDE.md to reflect v0.0.34 state: fix version (v0.0.33 to v0.0.34), update dependencies (gridExtra moved from Depends to Imports), add CRAN preparation status section, update CRANチェックリスト with completed items, update R CMD check result to 0/0/0.
- Further CLAUDE.md refinement: add complete Export function inventory (31 functions with breakdown), add branch status, add R source file count, add v1.0.0 release roadmap section, reorganize completed vs remaining features for clarity, clean up redundant TODO sections where all items are completed.
CRAN Submission Preparation
- Fix typo in DESCRIPTION: “pacakge” to “package”.
- Change Title to Title Case with quoted software names: “Visualization of ‘exametrika’ Output Using ‘ggplot2’”.
- Rewrite Description field to follow CRAN conventions: starts with verb, no markdown links, includes ISBN reference for Shojima (2022).
- Remove non-standard
Referencefield from DESCRIPTION. Reference information is now included in the Description field. - Move
gridExtrafromDependstoImports(CRAN recommends minimizing Depends). - Add
R (>= 3.5.0)to Depends for minimum R version requirement. - Fix
.Rbuildignorepattern for CLAUDE.md to be case-insensitive (^[Cc][Ll][Aa][Uu][Dd][Ee]\.md$). - Add
^cran-comments\.md$to.Rbuildignore. - Create
cran-comments.mdfor initial CRAN submission. - Update LICENSE year from 2023 to 2023-2026.
- Add R-CMD-check and MIT license badges to README.md.
ggExametrika 0.0.33
R CMD check Fixes
- Add
LICENSEfile (YEAR/COPYRIGHT HOLDER format) for CRAN compliance.DESCRIPTIONspecifiesLicense: MIT + file LICENSE, which requires aLICENSEfile (not justLICENSE.md). - Wrap
J35S500examples in\dontrun{}to avoid R CMD check failures when exametrika < 1.9.0 is installed.J35S500dataset is only available in exametrika >= 1.9.0 (not yet on CRAN). Affected functions:plotFCBR_gg(),plotFCRP_gg(),plotScoreField_gg(),plotFRP_gg(),plotCRV_gg(),plotRRV_gg(). TODO: revert after exametrika v1.9.0 is released on CRAN. - Remove
LazyData: truefrom DESCRIPTION (package has no data directory). - Remove
VignetteBuilder: knitrandknitr/rmarkdownfrom Suggests (no vignettes after migration to pkgdown articles). - Comprehensive NSE (Non-Standard Evaluation) global variable declarations in
R/zzz.Rviautils::globalVariables(). Covers all ggplot2aes()and tidyr NSE variables across all plot functions (30+ variables). Previously onlyvaluewas declared. - Add
@importFromfor missing function imports:stats::ave,stats::median,stats::setNames,utils::tail,ggplot2::geom_segment,ggplot2::sec_axis,ggplot2::scale_fill_gradientn,ggplot2::scale_x_reverse,tidyr::all_of. Resolves all “no visible global function definition” NOTEs. - Add
github::kosugitti/exametrikatoR-CMD-check.yamlandtest-coverage.yamlextra-packages. CRAN version (v1.8.1) lacks v1.9.0 datasets; examples with@examplesIf+\dontrun{}do not correctly suppress execution due towithAutoprintinteraction.
CI / Infrastructure Fixes
- Fix
_pkgdown.yml: use'"articles/name"'syntax for article references in contents. pkgdown evaluates contents entries as R expressions, so bareplot-gallerywas parsed asplot - gallery(subtraction). Additionally, pkgdown prefixes article names witharticles/for files invignettes/articles/. - Move
getting-started.Rmdandgetting-started-ja.Rmdfromvignettes/tovignettes/articles/as pkgdown-only articles. Remove vignette YAML metadata (\VignetteIndexEntry,\VignetteEngine,\VignetteEncoding) andoutput: rmarkdown::html_vignette. This resolves R CMD check vignette build errors caused by exametrika dependency during check. - Add
^vignettes/articles$to.Rbuildignoreto exclude pkgdown-only articles from package build. - Update
test-coverage.yaml: upgradecodecov/codecov-actionfrom v4 to v5, addprint(cov)for log output, add testthat output display and failure artifact upload steps, update parameter names for v5 compatibility (filetofiles,plugintoplugins). Setfail_ci_if_error: falsefor codecov upload to avoid CI failure whenCODECOV_TOKENis not configured. - Update
pkgdown.yaml: install exametrika from GitHub (github::kosugitti/exametrika) to ensure v1.9.0 datasets (e.g.,J35S500) are available for article rendering.
GitHub Pages / pkgdown (Phase 3)
- Add Plot Gallery article (
vignettes/articles/plot-gallery.Rmd) as a pkgdown-only article showcasing all 27 visualization functions with live rendered examples. The gallery is organized into 7 sections: IRT Models, GRM, Latent Class/Rank Analysis, Biclustering (binary/ordinal/nominal), LRAordinal/LRArated, Network Models (DAG), and Common Options Demo. - Uses six sample datasets (J15S500, J5S1000, J35S515, J35S500, J20S600, J15S3810) covering binary, ordinal, and nominal response types, and 8 model types (IRT, GRM, LCA, LRA, LRAordinal, Biclustering, ordinal Biclustering, nominal Biclustering). Network models (BNM, LDLRA, LDB, BINET) are shown as reference code only (eval=FALSE) since they require explicit graph structure input.
- Add Plot Gallery to
_pkgdown.ymlnavbar menu (displayed at the top of the Articles dropdown) and articles section.
Vignette Bug Fixes
- Remove incorrect
plotFRP_gg(result_lca)andplotFRP_gg(result_lra)calls from both English and Japanese getting-started vignettes.plotFRP_gg()requires Biclustering-family models; LCA/LRA do not produce FRP output (exametrika valid_types declaration is incorrect). - Replace non-existent
OrdinalDatadataset withJ35S500in ordinal Biclustering example. - Fix
color =tocolors =inplotTIC_gg()customization example (parameter name mismatch). - Fix
rankdir =todirection =and remove non-existentnode_color/edge_colorparameters fromplotGraph_gg()customization example. - Set LDLRA, LDB, and BINET
plotGraph_gg()examples toeval = FALSEwith “coming soon” notes, as DAG visualization currently supports BNM only. - Fix
plotFRP_gg()usage in vignettes: the function returns a single ggplot object, not a list. Removed incorrect[[1]]indexing andcombinePlots_gg()calls. - Set BNM, LDLRA, LDB, and BINET model fitting and all dependent plot chunks to
eval = FALSEin both vignettes. BNM requires explicit graph input; LDLRA/LDB/BINET are computationally expensive and have unresolved API issues with current exametrika version. - Set
devtools::install_github()chunks toeval = FALSEin both vignettes. devtools is not available during R CMD check. - Replace non-existent
OrdinalDatadataset withJ35S500inplotFCBR_gg()andplotFRP_gg()roxygen examples. - Fix
plotFCBR_gg()example:fields = 1:6exceedednfld = 5, andcolorshad 4 values for 5-category data. Changed tofields = 1:5and added 5th color. - Add missing
library(exametrika)toplotFCRP_gg()andplotScoreField_gg()roxygen examples. - Change
plotFieldPIRP_gg()andplotLDPSR_gg()examples from@examplesIfto@exampleswith\dontrun{}. LDB and BINET require explicit graph structure input that cannot be created in simple examples.
GitHub Pages / pkgdown (Phase 2)
- Change vignettes (getting-started.Rmd, getting-started-ja.Rmd) from
eval = FALSEtoeval = requireNamespace("exametrika", quietly = TRUE). Vignette code chunks now execute automatically when exametrika is installed, producing live output on pkgdown site, while still being skipped gracefully when unavailable. - Add
nomBiclust(nominalBiclustering) column to Function-Model Compatibility Matrix in both English and Japanese vignettes. - Add three new function rows to the compatibility matrix:
plotFCRP_gg(v1.9.0),plotScoreField_gg(v1.9.0),plotLDPSR_gg(v0.0.32). - Fix missing
ordBiclustmarks in the compatibility matrix forplotFRP_gg,plotLRD_gg,plotCRV_gg, andplotRRV_gg. These functions natively accept ordinalBiclustering in their validation code but were not marked in the matrix. - Fix missing
LDLRAmark forplotTRP_ggin the compatibility matrix. The function accepts LDLRA in its validation code but was not marked.
GitHub Pages / pkgdown (Phase 1)
- Migrate
@examples+\dontrun{}to@examplesIf requireNamespace("exametrika", quietly = TRUE)for all 28 plot functions. Examples now run automatically when exametrika is installed (improving pkgdown reference pages with live output) while still being skipped gracefully when exametrika is unavailable. - Three pure utility functions (LogisticModel, ItemInformationFunc, ItemInformationFunc_GRM) retain
@examplessince they have no exametrika dependency. - Add
plotLDPSR_ggto_pkgdown.ymlreference section under “DAG & Network Model Plots”. - Rename “DAG Visualization” section to “DAG & Network Model Plots” in
_pkgdown.ymlto better reflect the inclusion of BINET-specific profile plots. - Add
figuressection to_pkgdown.ymlwith explicit dimensions (fig.width=7, fig.height=5, dpi=96, fig.retina=2) for consistent example plot rendering on GitHub Pages.
ggExametrika 0.0.32
New Features
- Add
plotLDPSR_gg()for Local Dependence Passing Student Rate (LDPSR) visualization (BINET only). LDPSR shows item-level correct response rate profiles comparing parent and child classes at each DAG edge, visualizing how students improve when transitioning between latent classes via a specific field. -
plotLDPSR_gg()supports common plot options (title, colors, linetype, show_legend, legend_position). - Returns a list of ggplot objects (one per DAG edge), compatible with
combinePlots_gg().
Test Infrastructure
- Add BINET test fixture to
helper-setup.Rusing J35S515 with 3 classes, 5 fields, and a simple chain DAG structure. - Add
test-LDPSR-plots.Rwith comprehensive tests: basic functionality, common options, input validation, model type rejection, and combinePlots_gg integration. - Add
plotLDPSR_ggvalidation entry totest-validation.R.
ggExametrika 0.0.31
Bug Fixes
- Fix legend control in
plotICBR_gg(),plotICRP_gg(),plotFCRP_gg(), andplotFRP_gg():legend.positionwas unconditionally applied in the initialtheme()call, thenshow_legend = FALSEattempted to override it in a separatetheme()layer. Replaced with a single conditional block for consistent behavior.
ggExametrika 0.0.30
Bug Fixes
- Fix
plotRMP_gg()to support LRAordinal and LRArated model types. Previously these models were rejected with “Invalid input” error despite having valid Students/Membership data. - Add polytomous (multi-valued) data support to
plotCRV_gg()withstatparameter (“mean”, “median”, “mode”), matching the existingplotRRV_gg()functionality. For binary data, backward compatibility is fully maintained. - Add
show_labelsparameter toplotCRV_gg()for displaying class labels using ggrepel. - For polytomous CRV, Y-axis automatically adjusts to “Expected Score (stat)” with range 1-maxQ. Title includes stat name.
CI / Test Infrastructure
- Add GitHub Actions workflow
R-CMD-check.yamlfor multi-platform R CMD check (macOS, Windows, Ubuntu with R release/devel/oldrel-1). - Add GitHub Actions workflow
test-coverage.yamlfor covr test coverage with optional Codecov upload. - Fix BNM test fixture in
helper-setup.R: BNM requires a DAG graph argument (g). Added igraph DAG creation for J5S10 dataset. This resolves 4 previously skipped DAG tests. - Add tests for
plotRMP_gg()with LRAordinal/LRArated models. - Update
plotCRV_gg()tests: replace error-expectation test with polytomous support tests (stat, show_labels). - Remove Dropbox conflict copy artifact from tests/testthat/.
- Test results: FAIL 0 | WARN 22 | SKIP 0 | PASS 452 (previously 433 PASS + 4 SKIP).
Documentation
- Update CLAUDE.md: Correct FRP model support table. exametrika’s
plot.exametrikavalid_typesdeclares FRP as valid for LCA and LRA, but neitherLCA()norLRA()actually produce a$FRPfield in their output. TheplotFRP_gg()correctly rejects these models. Added annotation (*1) to model compatibility tables documenting this exametrika-side inconsistency.
ggExametrika 0.0.29
Documentation
- Comprehensive README.md update to reflect current implementation status
- Add nominalBiclustering, ordinalBiclustering, LRAordinal, LRArated to model list
- Reorganize Function-Model compatibility table into 4 sections (IRT/GRM, LCA/LRA, Biclustering, Network) with accurate coverage for all functions and models
- Add previously unlisted functions: plotICC_overlay_gg, plotIIC_overlay_gg, plotFCRP_gg, plotFCBR_gg, plotScoreField_gg, plotScoreFreq_gg, plotScoreRank_gg, plotICRP_gg, plotICBR_gg
- Fix missing marks in compatibility table (plotFRP_gg LCA/LRA support, plotLCD_gg/plotCMP_gg Biclustering support, plotRMP_gg BINET support, etc.)
- Add usage examples for LRAordinal/LRArated, polytomous Biclustering, and overlay functions
- Add function-specific parameters (stat, style, show_labels) to Common Plot Options section
- Remove broken link to non-existent Japanese guide
ggExametrika 0.0.28
Test Infrastructure Setup
Comprehensive testthat test suite for all 26 exported plot functions.
- Create
helper-setup.Rwith shared test fixtures (IRT 2PL/3PL, GRM, LCA, LRA, Biclustering binary/ordinal/nominal, LRAordinal, LRArated, BNM). Fixtures computed once and shared across all test files. - Add 10 new test files covering all plot function families:
-
test-IRT-plots.R: plotICC_gg, plotTRF_gg, plotICC_overlay_gg -
test-IIC-TIC-plots.R: plotIIC_gg, plotTIC_gg, plotIIC_overlay_gg (IRT + GRM) -
test-GRM-plots.R: plotICRF_gg -
test-LCA-LRA-plots.R: plotIRP_gg, plotTRP_gg, plotLCD_gg, plotLRD_gg, plotCMP_gg, plotRMP_gg -
test-Biclustering-plots.R: plotFRP_gg, plotCRV_gg, plotRRV_gg (binary + polytomous) -
test-PolyBiclustering-plots.R: plotFCRP_gg, plotFCBR_gg, plotScoreField_gg -
test-LRAordinal-plots.R: plotScoreFreq_gg, plotScoreRank_gg, plotICRP_gg, plotICBR_gg -
test-DAG-plots.R: plotGraph_gg (BNM) -
test-utility.R: combinePlots_gg -
test-validation.R: Cross-cutting input validation for all 24+ plot functions
-
- Add input validation tests for all functions: NULL, data.frame, numeric, character, list inputs and wrong model type cross-checks.
- Add common options tests for all functions: title (TRUE/FALSE/custom), colors, linetype, show_legend, legend_position.
- Remove empty legacy test files (test_ICCtoTIC.R, test_IRPtoCMPRMP.R, test_option.R) and Rplots.pdf artifact.
- Total: 433 PASS, 0 FAIL, 22 WARN (ggplot2 deprecation only), 4 SKIP (BNM fixture unavailable).
ggExametrika 0.0.27
Common Options Unification
Add common plot options (title, colors, linetype, show_legend, legend_position) to 11 functions for API consistency.
Fully new common options (6 functions)
- Add common options to
plotICC_gg(): title (logical/character), colors, linetype, show_legend, legend_position. Also additemsparameter for selecting which items to plot. - Add common options to
plotTRF_gg(): title (logical/character), colors, linetype, show_legend, legend_position. - Add common options to
plotIRP_gg(): title (logical/character), colors, linetype (default: “dashed”), show_legend, legend_position. - Add common options to
plotCMP_gg(): title (logical/character), colors, linetype (default: “dashed”), show_legend, legend_position. - Add common options to
plotRMP_gg(): title (logical/character), colors, linetype (default: “dashed”), show_legend, legend_position. - Add common options to
plotFieldPIRP_gg(): title (logical/character), colors (per-field), linetype, show_legend, legend_position.
Supplemented missing options (4 functions)
- Rename
colortocolorsinplotTIC_gg()for API consistency. Addshow_legendandlegend_positionparameters. - Add
colors,linetype,show_legend,legend_positiontoplotTRP_gg(). Extendtitleto support character strings. colors[1]=bar fill, colors[2]=line/point color. - Add
colors,linetype,show_legend,legend_positiontoplotLCD_gg(). Extendtitleto support character strings. colors[1]=bar fill, colors[2]=line/point color. - Add
colors,linetype,show_legend,legend_positiontoplotLRD_gg(). Extendtitleto support character strings. colors[1]=bar fill, colors[2]=line/point color.
DAG visualization (1 function)
- Add
title(logical/character),colors(node fill),show_legend,legend_positiontoplotGraph_gg(). Note:linetypeis not applicable to DAG edge arrows.
ggExametrika 0.0.26
- Fix
plotCMP_gg()andplotRMP_gg()to access Students columns by name (Membership *) instead of index position. Prevents column-shift bugs when exametrika adds columns (e.g.,Estimate). - Fix
plotCMP_gg()andplotRMP_gg()$Nclassreference to fallback chain:n_class->Nclass->n_rank->Nrank. Now accepts LRA/Biclustering objects without errors. - Migrate
$Nclass/$Nfieldreferences inplotArray_gg()andplotFieldPIRP_gg()to new naming convention (n_class/n_field/n_rank) with fallback to deprecated names (Nclass/Nfield/Nrank). - Add internal utility
.first_non_null()for safe fallback chains across naming conventions. - Fix
plotTRP_gg(),plotLCD_gg(),plotLRD_gg()to use LCD/LRD fallback chains. LRA and LDLRA models (which have$LRDbut not$LCD) now work correctly with all three functions. - Add LDLRA support to
plotTRP_gg()(previously missing from valid model types). - Fix
plotArray_gg()single-panel return value: when onlyOriginal = FALSEorClusterd = FALSE, the function now correctly returns a list with the single plot at index 1 (previously stored at index 2 when only Clusterd was TRUE, causingplot[[1]]to be NULL). - Full backward compatibility maintained with older exametrika versions.
ggExametrika 0.0.25
- Fix class validation in
plotLCD_gg(),plotLRD_gg(),plotCMP_gg(), andplotRMP_gg()to support polytomous biclustering models. - Add support for
ordinalBiclusteringandnominalBiclusteringclasses in LCD, LRD, CMP, and RMP plots. - Change class validation from
all(class(data) %in% c(...))toany(class(data) %in% c(...))for better compatibility. - Add
inherits(data, "exametrika")check for more robust input validation. - Full backward compatibility maintained for binary Biclustering, LCA, LRA, LDLRA, LDB, and BINET models.
ggExametrika 0.0.24
- Add multi-valued (polytomous) data support to
plotRRV_gg()andplotCRV_gg()for ordinal/nominal Biclustering. - Add
statparameter toplotRRV_gg()andplotCRV_gg()for polytomous data: “mean” (default), “median”, or “mode”. - Add
show_labelsparameter toplotRRV_gg()andplotCRV_gg()(default: FALSE) for displaying rank/class labels using ggrepel. - Add ggrepel to Imports for automatic label positioning without overlaps.
- Y-axis automatically adjusts: 0-1 for binary data (Correct Response Rate), 1-maxQ for polytomous data (Expected Score).
- Title automatically includes stat name for polytomous data (e.g., “Rank Reference Vector (mean)”).
- Full backward compatibility maintained for binary Biclustering models.
ggExametrika 0.0.23
- Add
plotFCRP_gg()for Field Category Response Profile (FCRP) visualization (exametrika v1.9.0 feature). - FCRP displays category response probability profiles for each field across latent classes/ranks in polytomous biclustering models (ordinalBiclustering, nominalBiclustering).
- Support two visualization styles: “line” (default, line plot with points) and “bar” (stacked bar chart).
- For bar style, add category boundary transition lines (dashed lines connecting adjacent bars).
- Support common plot options (title, colors, linetype, show_legend, legend_position).
- Requires 3+ response categories (use plotFRP_gg for binary data).
- Completes exametrika v1.9.0 polytomous biclustering feature set (FCBR, ScoreField, FCRP all implemented).
ggExametrika 0.0.22
- Add multi-valued data support to
plotFRP_gg()(Field Reference Profile). - Add
statparameter for polytomous data: “mean” (weighted average), “median”, “mode”. - Support ordinalBiclustering and nominalBiclustering in addition to binary Biclustering/IRM/LDB/BINET.
- Change return value from list to single ggplot object showing all fields.
- Add common plot options (title, colors, linetype, show_legend, legend_position) to
plotFRP_gg(). - For binary data: displays correct response rate (0-1).
- For polytomous data: displays expected score calculated using selected
statmethod. - Add comprehensive test suite (develop/test_FRP_multivalue.R) covering binary/ordinal/nominal data.
ggExametrika 0.0.21
- Add
plotScoreField_gg()for Score-Field heatmap visualization (exametrika v1.9.0 feature). -
plotScoreField_gg()displays expected scores for each field across latent classes/ranks in polytomous biclustering models (nominalBiclustering, ordinalBiclustering). - Expected score calculation: sum of (category × probability) for each field-class/rank combination.
- Support common plot options (title, colors, show_legend, legend_position).
- Add
show_valuesparameter to toggle display of score values on heatmap cells. - Add
text_sizeparameter to control size of value labels. - Uses colorblind-friendly yellow-orange-red gradient by default.
ggExametrika 0.0.20
- Add
plotFCBR_gg()for Field Cumulative Boundary Reference (FCBR) visualization (ordinalBiclustering). - FCBR shows cumulative probability curves for each category boundary across latent classes/ranks.
- Support common plot options (title, colors, linetype, show_legend, legend_position) in
plotFCBR_gg(). - FCBR displays ALL boundary probabilities including P(Q>=1) (always 1.0), P(Q>=2), P(Q>=3), etc.
- P(Q>=1) appears as a horizontal line at the top (y=1.0) for reference.
ggExametrika 0.0.19
- Add
plotScoreRank_gg()for Score-Rank heatmap visualization (LRAordinal, LRArated). - Support common plot options (title, colors, show_legend, legend_position) in
plotScoreRank_gg().
ggExametrika 0.0.18
- Add
plotICBR_gg()for Item Category Boundary Response (ICBR) visualization (LRAordinal). - Add
plotICRP_gg()for Item Category Reference Profile (ICRP) visualization (LRAordinal, LRArated). - Both functions support common plot options (title, colors, linetype, show_legend, legend_position).
- ICBR shows cumulative probability curves for each category boundary across latent ranks.
- ICRP shows response probability curves for each category across latent ranks (probabilities sum to 1.0).
- Add tidyr to Imports for data transformation in plotICBR_gg() and plotICRP_gg().
ggExametrika 0.0.17
- Add
plotIIC_overlay_gg()for overlaying all Item Information Curves (IIC) on a single plot (IRT/GRM). -
plotIIC_overlay_gg()supports both IRT and GRM models. -
plotIIC_overlay_gg()supports common plot options (title, colors, linetype, show_legend, legend_position). - Similar to
plot(IRT_result, type = "IIF", overlay = TRUE)in exametrika, but returns a ggplot2 object.
ggExametrika 0.0.16
- Add
plotICC_overlay_gg()for overlaying all Item Characteristic Curves (ICC) on a single plot (IRT). -
plotICC_overlay_gg()supports common plot options (title, colors, linetype, show_legend, legend_position). - Similar to
plot(IRT_result, type = "IRF", overlay = TRUE)in exametrika, but returns a ggplot2 object.
ggExametrika 0.0.15
- Add
plotScoreFreq_gg()for Score Frequency Distribution (LRAordinal, LRArated). - Common plot options (title, colors, linetype, show_legend, legend_position) supported.
ggExametrika 0.0.14
- Add multi-valued data support to
plotArray_gg()for ordinal/nominal Biclustering. - Add common plot options (title, colors, show_legend, legend_position) to
plotArray_gg(). - Add
Clusterd_lines_colorparameter toplotArray_gg()for customizing boundary line colors (default: red for binary data, white for multi-valued data). -
plotArray_gg()now automatically detects the number of categories and uses appropriate color palettes. - For binary data (0/1), uses white/black colors. For multi-valued data (2+ categories), uses a colorblind-friendly palette.
- Add special handling for missing values (-1): displayed as “NA” in legend with black color.
- Fix plot margins and title spacing to prevent overlapping in side-by-side displays.
- Fix boundary lines to stay within plot area using proper coordinate limits.
- Fix boundary line positions in
plotArray_gg()to align exactly with class/field boundaries. -
CRITICAL FIX: Correct row sorting order in
plotArray_gg()to match exametrika’s original implementation. Now usesorder(ClassEstimated, decreasing = FALSE)with reversed rown for proper visual alignment (higher class numbers at bottom).
ggExametrika 0.0.13
- Add GRM support to
plotIIC_gg()for Item Information Curve (IRT and GRM). - Add GRM support to
plotTIC_gg()for Test Information Curve (IRT and GRM). - Add
ItemInformationFunc_GRM()for computing GRM item information. - Add common plot options (title, colors, linetype, show_legend, legend_position) to
plotIIC_gg()andplotTIC_gg().
ggExametrika 0.0.12
- Add
plotCRV_gg()for Class Reference Vector (CRV) visualization (Biclustering). - Add
plotRRV_gg()for Rank Reference Vector (RRV) visualization (Biclustering). - Both functions support common plot options (title, colors, linetype, show_legend, legend_position).
ggExametrika 0.0.11
- Add
plotICRF_gg()for Item Category Response Function (GRM) visualization. - Add
.gg_exametrika_palette()as package-wide default color palette (ColorBrewer Dark2). - Add common plot options (title, colors, linetype, show_legend, legend_position) to
plotICRF_gg(). - Fix y-axis on all probability plots to always display 0.00 and 1.00 with breaks at 0.25 intervals.
ggExametrika 0.0.10
- Add
plotTRF_gg()for Test Response Function (TRF) visualization in IRT models.
ggExametrika 0.0.9
- Add
plotGraph_gg()for DAG visualization using ggraph. - Expand help documentation for all functions.
- Apply
styler::style_pkg()for consistent code formatting. - Fix compatibility with current exametrika package.
- Add pkgdown site and GitHub Actions workflow.
ggExametrika 0.0.8
- Add
plotArray_gg()for array plot (Biclustering, IRM, LDB, BINET). - Add
plotFieldPIRP_gg()for Field PIRP plot (LDB).
ggExametrika 0.0.7
- Add
plotTRP_gg()for Test Reference Profile (LCA, LRA, Biclustering, IRM, LDLRA, LDB, BINET). - Add
plotLCD_gg()for Latent Class Distribution (LCA, Biclustering). - Add
plotLRD_gg()for Latent Rank Distribution (LRA, Biclustering, LDLRA, LDB, BINET). - Add
plotCMP_gg()for Class Membership Profile (LCA, Biclustering, BINET). - Add
plotRMP_gg()for Rank Membership Profile (LRA, Biclustering, LDLRA, LDB, BINET, LRAordinal, LRArated).
ggExametrika 0.0.6
- Add
plotIRP_gg()for Item Reference Profile (LCA, LRA, LDLRA). - Add
plotFRP_gg()for Field Reference Profile (LCA, LRA, Biclustering, IRM, LDB, BINET).
ggExametrika 0.0.5
- Add
plotICC_gg()for Item Characteristic Curve (IRT: 2PL, 3PL, 4PL). - Add
plotIIC_gg()for Item Information Curve (IRT: 2PL, 3PL, 4PL). - Add
plotTIC_gg()for Test Information Curve (IRT: 2PL, 3PL, 4PL). - Add
LogisticModel()for four-parameter logistic model computation. - Add
ItemInformationFunc()for item information function computation. - Add
combinePlots_gg()utility for arranging multiple plots in a grid.