Skip to content
Vega-Lite templates

Root Locus Sketch

Closed-loop pole trajectory as gain K varies — illustrative dataset.

Template previewVega-Lite
Rendering…

Make it your own.

{
  "$schema":"https://vega.github.io/schema/vega-lite/v5.json",
  "data":{"values":[
    {"K":0,"re":-2,"im":0},{"K":1,"re":-1.4,"im":1.2},{"K":2,"re":-1.0,"im":1.8},
    {"K":3,"re":-0.5,"im":2.3},{"K":4,"re":-0.1,"im":2.7},{"K":5,"re":0.3,"im":3.0},
    {"K":0,"re":-2,"im":0},{"K":1,"re":-1.4,"im":-1.2},{"K":2,"re":-1.0,"im":-1.8},
    {"K":3,"re":-0.5,"im":-2.3},{"K":4,"re":-0.1,"im":-2.7},{"K":5,"re":0.3,"im":-3.0},
    {"K":0,"re":0,"im":0,"po":"pole"},{"K":0,"re":-4,"im":0,"po":"pole"},
    {"K":0,"re":-3,"im":0,"po":"zero"}
  ]},
  "layer":[
    {"mark":{"type":"line","color":"#3666ff","strokeWidth":2,"point":true}},
    {"transform":[{"filter":"datum.po === 'pole'"}],
     "mark":{"type":"point","shape":"cross","size":260,"color":"#dc2626","strokeWidth":3}},
    {"transform":[{"filter":"datum.po === 'zero'"}],
     "mark":{"type":"point","shape":"circle","size":260,"color":"#16a34a","filled":false,"strokeWidth":3}}
  ],
  "encoding":{
    "x":{"field":"re","type":"quantitative","title":"Real(s)"},
    "y":{"field":"im","type":"quantitative","title":"Imag(s)"}
  },
  "width":420,"height":340
}