read the chest xray
what is the straight line over right lung bottom
Search for clinical images of pneumothorax for comparison
chest X-ray pneumothorax visceral pleural line

A posterior-anterior (PA) chest X-ray demonstrating a large, total right-sided pneumothorax. The right hemithorax shows marked hyperlucency with a complete absence of bronchovascular lung markings between the chest wall and the visceral pleural line. The right lung is collapsed toward the hilum, appearing as a dense, shrunken radiopaque mass medial to the pleural space. There is a visible sharp visceral pleural edge. The mediastinum remains relatively midline without significant deviation, suggesting the absence of immediate tension physiology at the time of imaging. In contrast, the left lung exhibits normal expansion, normal radiodensity, and preserved vascular markings extending to the periphery. The diaphragm on the right appears slightly flattened compared to the left. This diagnostic image illustrates a common complication of underlying pulmonary emphysema, serving as a classic representation of spontaneous pneumothorax for medical students and clinicians.

This diagnostic image is a portable anteroposterior (AP) chest X-ray of a patient in a semi-sitting position, demonstrating a large right-sided pneumothorax. The right hemithorax shows a significant area of hyperlucency (increased darkness) in the peripheral zone, characterized by the complete absence of bronchovascular lung markings. Three light blue arrows point to the visible visceral pleural line, which outlines the collapsed right lung parenchyma. The mediastinal structures and the trachea (indicated by a fourth blue arrow) are moderately shifted toward the left side, suggesting a mass effect due to positive pressure within the right pleural space. Bilateral patchy opacities are also visible in the remaining lung fields, consistent with underlying pulmonary pathology such as COVID-19 pneumonia or airspace disease. This visual is clinically significant for teaching the identification of pneumothorax, visceral pleural line visualization, and secondary signs of tension such as mediastinal shift.

This anterior-posterior (AP) chest X-ray demonstrates a right-sided pneumothorax in a young adult patient. Key findings include a visible visceral pleural line and an absence of pulmonary markings in the right upper and mid-periphery of the thoracic cavity, indicating air accumulation in the pleural space. Measurements on the image note an interval decrease in the pneumothorax size. A pigtail catheter is in situ, with its distal curled tip positioned in the right lower hemithorax for drainage. Multiple external monitoring devices are present, including ECG leads and cables overlying the chest wall. The contralateral left lung appears clear without evidence of consolidation, effusion, or edema. The mediastinal structures and heart size are within normal limits. This diagnostic image illustrates the management of catamenial pneumothorax, characterized by the temporal relationship between menstruation and pleural air leakage.

This dual-panel image demonstrates a comparison between chest X-ray (CXR) and lung ultrasound (LUS) in the diagnosis of a residual pneumothorax following major trauma. Image (a) is an anteroposterior bedside CXR showing a surgical drainage tube (arrowhead) in the right hemithorax. While the tube is visible as a radiopaque line, the presence and extent of residual air in the pleural space are difficult to assess. Image (b) is a corresponding lung ultrasound showing a diagnostic 'lung point' (indicated by the yellow arrow). This specific sonographic sign represents the transition zone between a pneumothorax (where the pleural sliding and A-lines are absent) and the normal lung (where visceral and parietal pleurae meet). The LUS image displays the hyperechoic pleural line and regular horizontal A-line artifacts, with the arrow highlighting the point of contact between the aerated lung and the pleural air pocket. This comparison highlights the superior sensitivity of bedside ultrasound over plain radiography for monitoring pneumothorax in critically ill patients.

This diagnostic image is an anteroposterior (AP) chest X-ray demonstrating a significant left-sided pneumothorax. The primary finding is a large area of hyperlucency in the left hemithorax with a complete absence of peripheral bronchovascular lung markings. A distinct, thin white line representing the visceral pleural edge is visible, indicating that the left lung has partially collapsed toward the hilum. The contralateral (right) lung field exhibits patchy, bilateral opacities consistent with underlying parenchymal disease such as pneumonia or ARDS. An endotracheal tube is in situ, along with external monitoring leads. Anatomical landmarks including the clavicles, ribs, and humerus are partially visualized, though the patient's position and underlying pathology obscure mediastinal and cardiac contours. This image serves as a clinical example of barotrauma or secondary spontaneous pneumothorax in a critically ill patient, highlighting the radiographic necessity of identifying the visceral pleural line for definitive diagnosis.

This composite educational image illustrates a moderate-to-large pneumothorax using multiple imaging modalities. The panel includes three Computed Tomography (CT) scans and one posteroanterior chest X-ray (CXR) for comparative diagnostic analysis. (a) Axial CT slice shows the transverse cross-section, clearly demonstrating a large air-filled pleural space in the right hemithorax with resulting lung collapse and visualization of the visceral pleural line. (b) Coronal CT provides a frontal orientation, highlighting the vertical extent of the pneumothorax and the displacement of the lung towards the mediastinum. (c) Sagittal CT offers a lateral perspective, showing the anterior-posterior depth of the air collection. (d) The corresponding chest X-ray displays the same pathology but with reduced sensitivity; while the lung field appears hyperlucent, the fine anatomical detail of the lung parenchyma and the precise pleural separation are less distinct than in the CT views. This comparison emphasizes the superior capability of CT in localized pneumothorax detection and volumetric measurement, showing detailed bronchial and vascular structures within the remaining functional lung tissue.



| Feature | True pneumothorax | Skin fold / fissure / rib overlap (more likely on your film) |
|---|---|---|
| Lung markings beyond the line | Absent - peripheral zone is uniformly black | Present - vessels/markings continue right up to the chest wall |
| Line shape | Gently curves, follows the chest wall/lung contour | Often straighter, can look oblique/linear |
| Extends past rib cage margin | No - stays within the thorax | Skin folds often do extend beyond the ribs into soft tissue |
| Associated signs | Can show mediastinal shift, flattened hemidiaphragm, deep sulcus sign | None of these |
Create a pneumothorax reference guide or quick comparison PDF
mkdir -p /tmp/workspace/pneumothorax-guide/assets /tmp/workspace/pneumothorax-guide/output && ls -la /tmp/workspace/
cd /tmp/workspace/pneumothorax-guide/assets && \ curl -sL -o img1.jpg "https://cdn.orris.care/cdss_images/pmc_clinical_VQA_068707cf3685b0dd2955ff15c61d406eaff78fe354507e225d23c1e6c595e75d.jpg" && \ curl -sL -o img2.jpg "https://cdn.orris.care/cdss_images/pmc_clinical_VQA_6ae5b40cf8c3303697b2cf06a73aeb249fa3583098ff8c0444326ca6ae2106bb.jpg" && \ curl -sL -o img3.jpg "https://cdn.orris.care/cdss_images/pmc_clinical_VQA_5a5c4e23a98fe1034956942eb700cf50dcbb2e48e060f2a971f81943d126de66.jpg" && \ curl -sL -o img4.jpg "https://cdn.orris.care/cdss_images/pmc_clinical_VQA_6a463b0d16ad096ad67ffda5702f65e17464195f97676cfdc9e545d573f72984.jpg" && \ curl -sL -o img5.jpg "https://cdn.orris.care/cdss_images/pmc_clinical_VQA_0d7047cf1acb44dcc121ec2b51d862d86ebcf88e4c4385abd2329259fe5ec852.jpg" && \ ls -la
~/pneumothorax-guide/build_pdf.py
# -*- coding: utf-8 -*-
from reportlab.lib.pagesizes import A4
from reportlab.lib.units import cm
from reportlab.lib import colors
from reportlab.platypus import (SimpleDocTemplate, Paragraph, Spacer, Image, Table,
TableStyle, PageBreak, ListFlowable, ListItem, HRFlowable)
from reportlab.lib.styles import getSampleStyleSheet, ParagraphStyle
from reportlab.lib.enums import TA_CENTER, TA_LEFT
import os
ASSETS = "/tmp/workspace/pneumothorax-guide/assets"
OUT = "/tmp/workspace/pneumothorax-guide/output/Pneumothorax_Reference_Guide.pdf"
styles = getSampleStyleSheet()
title_style = ParagraphStyle('TitleX', parent=styles['Title'], fontSize=22, textColor=colors.HexColor('#1a3c5e'), spaceAfter=6)
subtitle_style = ParagraphStyle('Subtitle', parent=styles['Normal'], fontSize=11, textColor=colors.HexColor('#555555'), alignment=TA_CENTER, spaceAfter=14)
h2 = ParagraphStyle('H2', parent=styles['Heading2'], fontSize=15, textColor=colors.HexColor('#1a3c5e'), spaceBefore=14, spaceAfter=8)
h3 = ParagraphStyle('H3', parent=styles['Heading3'], fontSize=12.5, textColor=colors.HexColor('#2e6da4'), spaceBefore=10, spaceAfter=6)
body = ParagraphStyle('Body', parent=styles['Normal'], fontSize=10, leading=14, spaceAfter=6)
caption = ParagraphStyle('Caption', parent=styles['Normal'], fontSize=8.5, leading=11, textColor=colors.HexColor('#444444'), alignment=TA_LEFT, spaceAfter=4)
warn = ParagraphStyle('Warn', parent=styles['Normal'], fontSize=9.5, leading=13, textColor=colors.HexColor('#7a1f1f'), spaceAfter=6, backColor=colors.HexColor('#fdeaea'), borderPadding=8)
doc = SimpleDocTemplate(OUT, pagesize=A4, topMargin=1.6*cm, bottomMargin=1.6*cm, leftMargin=1.8*cm, rightMargin=1.8*cm)
flow = []
# ---------- Title ----------
flow.append(Paragraph("Pneumothorax: Chest X-Ray Reference & Comparison Guide", title_style))
flow.append(Paragraph("Quick visual and diagnostic reference for identifying pneumothorax on plain chest radiographs", subtitle_style))
flow.append(HRFlowable(width="100%", color=colors.HexColor('#1a3c5e'), thickness=1))
flow.append(Spacer(1, 10))
# ---------- What is a pneumothorax ----------
flow.append(Paragraph("1. What Is a Pneumothorax?", h2))
flow.append(Paragraph(
"A pneumothorax is air trapped in the pleural space between the visceral and parietal pleura, causing partial or "
"complete collapse of the underlying lung. On a plain chest radiograph, the diagnosis rests on identifying the "
"<b>visceral pleural line</b> with an absence of lung (bronchovascular) markings peripheral to that line.", body))
# ---------- Key radiographic signs ----------
flow.append(Paragraph("2. Key Radiographic Signs", h2))
signs = [
("Visceral pleural line", "A thin white line, usually curving concentrically with the chest wall, representing the edge of the collapsed lung."),
("Absent lung markings peripherally", "The most reliable sign - no vessels or bronchial markings are seen between the pleural line and the chest wall (uniformly black/hyperlucent zone)."),
("Deep sulcus sign", "On a supine film, air collects anteriorly/basally, producing an abnormally deep, lucent costophrenic angle."),
("Mediastinal shift", "Seen in tension pneumothorax - trachea and mediastinum pushed away from the affected side; a medical emergency."),
("Flattened hemidiaphragm", "Increased intrathoracic pressure on the affected side can flatten or invert the diaphragm."),
("Skin-fold mimic (pitfall)", "Skin folds, scapular borders, and bedsheet/clothing creases can produce a straight line that mimics a pleural edge - but true lung markings continue beyond it and it often extends past the rib cage margin."),
]
for t, d in signs:
flow.append(Paragraph(f"<b>{t}:</b> {d}", body))
flow.append(PageBreak())
# ---------- Comparison table ----------
flow.append(Paragraph("3. True Pneumothorax vs. Common Mimics", h2))
data = [
["Feature", "True Pneumothorax", "Skin Fold / Fissure / Rib Overlap"],
["Lung markings beyond the line", "Absent - uniformly black zone", "Present - vessels continue to chest wall"],
["Line shape", "Gentle curve, follows lung/pleural contour", "Often straighter or oblique"],
["Extends past rib cage margin", "No - stays within thorax", "Often yes, into soft tissue"],
["Associated findings", "Mediastinal shift, flattened diaphragm, deep sulcus sign (if tension)", "None"],
["Location typical", "Apical (erect film) or anterior/basal (supine film)", "Anywhere, follows skin/clothing crease or normal fissure plane"],
]
tbl = Table(data, colWidths=[4.3*cm, 6.0*cm, 6.0*cm])
tbl.setStyle(TableStyle([
('BACKGROUND', (0,0), (-1,0), colors.HexColor('#1a3c5e')),
('TEXTCOLOR', (0,0), (-1,0), colors.white),
('FONTSIZE', (0,0), (-1,-1), 8.7),
('FONTNAME', (0,0), (-1,0), 'Helvetica-Bold'),
('GRID', (0,0), (-1,-1), 0.5, colors.HexColor('#cccccc')),
('VALIGN', (0,0), (-1,-1), 'TOP'),
('ROWBACKGROUNDS', (0,1), (-1,-1), [colors.white, colors.HexColor('#f2f6fa')]),
('LEFTPADDING', (0,0), (-1,-1), 6),
('RIGHTPADDING', (0,0), (-1,-1), 6),
('TOPPADDING', (0,0), (-1,-1), 5),
('BOTTOMPADDING', (0,0), (-1,-1), 5),
]))
flow.append(tbl)
flow.append(Spacer(1, 14))
# ---------- Image gallery ----------
flow.append(Paragraph("4. Reference Images", h2))
def img_block(path, title, desc):
elems = []
elems.append(Paragraph(title, h3))
try:
elems.append(Image(path, width=11*cm, height=8.2*cm))
except Exception as e:
elems.append(Paragraph(f"[image unavailable: {e}]", caption))
elems.append(Paragraph(desc, caption))
elems.append(Spacer(1, 10))
return elems
flow += img_block(
os.path.join(ASSETS, "img1.jpg"),
"A. Large total right-sided pneumothorax (PA view)",
"Marked hyperlucency of the right hemithorax with complete absence of bronchovascular markings between the chest "
"wall and the sharp visceral pleural line. The collapsed lung appears as a dense shrunken mass near the hilum. "
"Mediastinum remains midline - no tension physiology at the time of imaging."
)
flow.append(PageBreak())
flow += img_block(
os.path.join(ASSETS, "img2.jpg"),
"B. Right pneumothorax with mediastinal shift (tension features)",
"Portable AP film; arrows (in original source) marked the visceral pleural line. Trachea and mediastinum are "
"shifted toward the left, indicating a mass effect from positive intrapleural pressure - a warning sign of "
"evolving tension pneumothorax requiring urgent decompression."
)
flow += img_block(
os.path.join(ASSETS, "img3.jpg"),
"C. Smaller/partial right pneumothorax with pigtail catheter in situ",
"Visible pleural line with absent markings in the right upper/mid periphery; a pigtail drainage catheter is "
"already placed. Useful for comparing a more subtle, partial pneumothorax against the large examples above."
)
flow.append(PageBreak())
flow += img_block(
os.path.join(ASSETS, "img4.jpg"),
"D. Left-sided pneumothorax with concurrent lung disease",
"Large area of hyperlucency in the left hemithorax with a distinct thin pleural edge; the lung has partially "
"collapsed toward the hilum. Note bilateral patchy opacities from underlying parenchymal disease - pneumothorax "
"can coexist with pneumonia/ARDS and still be identified by the same core sign (absent markings beyond the pleural line)."
)
flow += img_block(
os.path.join(ASSETS, "img5.jpg"),
"E. Pneumothorax on CT vs. chest X-ray (composite)",
"Axial, coronal and sagittal CT views alongside a corresponding chest X-ray of the same patient. CT clearly "
"resolves the pleural air collection and lung collapse; the plain film shows the same pathology as a hyperlucent "
"zone but with less anatomical detail - illustrating why CT is used when the X-ray is equivocal."
)
flow.append(PageBreak())
# ---------- Quick checklist ----------
flow.append(Paragraph("5. Quick Bedside Checklist", h2))
checklist = [
"Is there a line that curves with the chest wall, or is it straight/oblique (favors artifact)?",
"Are lung markings visible beyond the line? If yes -> not a pneumothorax.",
"Does the line extend past the rib cage into soft tissue? If yes -> likely skin fold.",
"Is the trachea/mediastinum shifted away from the suspected side? If yes -> possible tension pneumothorax, treat as emergency.",
"Is the hemidiaphragm flattened, or is there an abnormally deep costophrenic sulcus (supine film)? Suggests pneumothorax.",
"When in doubt, or if clinical suspicion is high (chest pain, breathlessness, trauma, recent line/procedure) despite an equivocal film, escalate for CT or urgent radiologist review - do not rely on a single static image."
]
flow.append(ListFlowable([ListItem(Paragraph(c, body)) for c in checklist], bulletType='1'))
flow.append(Spacer(1, 12))
flow.append(Paragraph(
"Disclaimer: This guide is an educational quick-reference summarizing general radiographic teaching points and "
"publicly sourced clinical teaching images. It is not a diagnostic tool and does not replace formal interpretation "
"by a qualified radiologist/clinician correlated with the patient's clinical presentation.", warn))
doc.build(flow)
print("PDF built at", OUT)