skills/literature/discovery/literature-mapping-guide/SKILL.md
Visual literature mapping and connected papers exploration
npx skillsauth add wentorai/research-plugins literature-mapping-guideInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Build visual maps of scholarly literature to understand research landscapes, identify clusters of related work, and discover hidden connections between papers.
Literature mapping transforms flat lists of papers into interactive visual networks where nodes represent papers and edges represent citation or similarity relationships. This approach helps researchers:
Connected Papers (connectedpapers.com) builds a similarity graph around a seed paper using co-citation and bibliographic coupling analysis.
| Feature | Details | |---------|---------| | Input | Paper title, DOI, or URL | | Graph type | Similarity (not direct citation) | | Node size | Citation count | | Node color | Publication year (darker = older) | | Max nodes | ~40 per graph | | Cost | Free: 5 graphs/month; Premium: unlimited |
How to use:
Litmaps (litmaps.com) creates dynamic, multi-seed citation maps that update as new papers are published.
Workflow:
VOSviewer (vosviewer.com) is a free desktop tool for constructing and visualizing bibliometric networks at scale.
# VOSviewer supports several network types:
# - Co-authorship networks
# - Co-citation networks
# - Bibliographic coupling networks
# - Co-occurrence of keywords
# - Citation networks
# Input formats:
# - Web of Science export files
# - Scopus CSV exports
# - Dimensions export files
# - RIS files from reference managers
# - CrossRef API queries (built-in)
Steps for VOSviewer analysis:
CiteSpace (citespace.podia.com) specializes in detecting research fronts and intellectual turning points.
Key features:
import networkx as nx
import requests
from collections import defaultdict
def build_citation_graph(seed_ids, depth=1, max_per_level=20):
"""Build a directed citation graph from seed papers."""
G = nx.DiGraph()
visited = set()
queue = [(sid, 0) for sid in seed_ids]
while queue:
paper_id, level = queue.pop(0)
if paper_id in visited or level > depth:
continue
visited.add(paper_id)
# Get paper metadata
meta_resp = requests.get(
f"https://api.semanticscholar.org/graph/v1/paper/{paper_id}",
params={"fields": "title,year,citationCount"}
)
if meta_resp.status_code != 200:
continue
meta = meta_resp.json()
G.add_node(paper_id, title=meta.get("title", ""),
year=meta.get("year"), citations=meta.get("citationCount", 0))
# Get references (backward)
refs_resp = requests.get(
f"https://api.semanticscholar.org/graph/v1/paper/{paper_id}/references",
params={"fields": "title,year,citationCount", "limit": max_per_level}
)
if refs_resp.status_code == 200:
for ref in refs_resp.json().get("data", []):
cited = ref["citedPaper"]
if cited.get("paperId"):
G.add_node(cited["paperId"], title=cited.get("title", ""),
year=cited.get("year"), citations=cited.get("citationCount", 0))
G.add_edge(paper_id, cited["paperId"], relation="cites")
if level < depth:
queue.append((cited["paperId"], level + 1))
return G
# Build graph from 2 seed papers
seeds = ["DOI:10.1038/s41586-021-03819-2", "ARXIV:2005.14165"]
graph = build_citation_graph(seeds, depth=1, max_per_level=15)
print(f"Graph: {graph.number_of_nodes()} nodes, {graph.number_of_edges()} edges")
# Find most central papers
centrality = nx.betweenness_centrality(graph)
top_central = sorted(centrality.items(), key=lambda x: x[1], reverse=True)[:10]
for node_id, score in top_central:
title = graph.nodes[node_id].get("title", "Unknown")
print(f" Centrality={score:.3f}: {title}")
| Visual Feature | Interpretation | |---------------|---------------| | Large cluster | Established subfield with many related papers | | Small isolated cluster | Emerging or niche research area | | Bridge node between clusters | Interdisciplinary or foundational paper | | Dense interconnections | Mature area with extensive cross-referencing | | Sparse area between clusters | Potential research gap or opportunity | | Temporal gradient (old to new) | Evolution of ideas over time |
tools
10 document processing skills. Trigger: extracting text from PDFs, parsing references, document Q&A. Design: parsing pipelines (GROBID, marker) and structured extraction tools.
documentation
Guide to tldraw for infinite canvas whiteboarding and diagram creation
testing
Create graphical abstracts, schematic diagrams, and scientific illustrations
documentation
Create UML diagrams and architecture visualizations with PlantUML