{"id":120,"date":"2007-12-19T18:00:55","date_gmt":"2007-12-19T23:00:55","guid":{"rendered":"https:\/\/blogs.mathworks.com\/loren\/2007\/12\/19\/plotting-with-style\/"},"modified":"2016-11-10T20:31:42","modified_gmt":"2016-11-11T01:31:42","slug":"plotting-with-style","status":"publish","type":"post","link":"https:\/\/blogs.mathworks.com\/loren\/2007\/12\/19\/plotting-with-style\/","title":{"rendered":"Plotting with Style"},"content":{"rendered":"<div xmlns:mwsh=\"https:\/\/www.mathworks.com\/namespace\/mcode\/v1\/syntaxhighlight.dtd\" class=\"content\">\r\n   <introduction>\r\n      <p>One of MATLAB's features is being able to customize plots.  But some of the customization may not need to be done by hand\r\n         and can instead be controlled programmatically.  Let me show you a set of these having to do with plotting lines.\r\n      <\/p>\r\n   <\/introduction>\r\n   <h3>Contents<\/h3>\r\n   <div>\r\n      <ul>\r\n         <li><a href=\"#1\">Plotting by Adding Lines<\/a><\/li>\r\n         <li><a href=\"#3\">Manually Control Color and Style<\/a><\/li>\r\n         <li><a href=\"#4\">Vectorizing Line Drawing<\/a><\/li>\r\n         <li><a href=\"#6\">Default Line Properties<\/a><\/li>\r\n         <li><a href=\"#10\">How Do axes Fit in?<\/a><\/li>\r\n         <li><a href=\"#14\">axes Properties ColorOrder and LineStyleOrder<\/a><\/li>\r\n         <li><a href=\"#16\">Do You Override the Defaults?<\/a><\/li>\r\n      <\/ul>\r\n   <\/div>\r\n   <h3>Plotting by Adding Lines<a name=\"1\"><\/a><\/h3>\r\n   <p>If you make a plot by successively adding lines, all the lines, by default, have the same color and linestyle.<\/p><pre style=\"background: #F9F7F3; padding: 10px; border: 1px solid rgb(200,200,200)\">m3 = magic(3);\r\nplot(m3(:,1));\r\nhold <span style=\"color: #A020F0\">on<\/span>\r\nplot(m3(:,2))\r\nplot(m3(:,3))\r\nhold <span style=\"color: #A020F0\">off<\/span><\/pre><img decoding=\"async\" vspace=\"5\" hspace=\"5\" src=\"https:\/\/blogs.mathworks.com\/images\/loren\/119\/colorLineStyle_01.png\"> <p>As you can see, it's very hard (impossible) to tell which line is which.<\/p>\r\n   <h3>Manually Control Color and Style<a name=\"3\"><\/a><\/h3>\r\n   <p>I can distinguish the lines by using different colors and linestyles. Here's one way to do it.<\/p><pre style=\"background: #F9F7F3; padding: 10px; border: 1px solid rgb(200,200,200)\">plot(m3(:,1),<span style=\"color: #A020F0\">'r'<\/span>);\r\nhold <span style=\"color: #A020F0\">on<\/span>\r\nplot(m3(:,2),<span style=\"color: #A020F0\">':b'<\/span>)\r\nplot(m3(:,3),<span style=\"color: #A020F0\">'g--'<\/span>)\r\nhold <span style=\"color: #A020F0\">off<\/span><\/pre><img decoding=\"async\" vspace=\"5\" hspace=\"5\" src=\"https:\/\/blogs.mathworks.com\/images\/loren\/119\/colorLineStyle_02.png\"> <h3>Vectorizing Line Drawing<a name=\"4\"><\/a><\/h3>\r\n   <p>I can instead vectorize the line drawing.<\/p><pre style=\"background: #F9F7F3; padding: 10px; border: 1px solid rgb(200,200,200)\">plot(m3)<\/pre><img decoding=\"async\" vspace=\"5\" hspace=\"5\" src=\"https:\/\/blogs.mathworks.com\/images\/loren\/119\/colorLineStyle_03.png\"> <p>What you see here is the MATLAB cycles through colors to distinguish the plots.  How many colors and which ones?  Does MATLAB\r\n      ever cycle through the linestyles?  You can find out answers to these questions in the documentation on <tt>LineStyle<\/tt> and <tt>Color<\/tt> as well as some answers in this article.\r\n   <\/p>\r\n   <h3>Default Line Properties<a name=\"6\"><\/a><\/h3>\r\n   <p>Let's see what properties lines in MATLAB have.  First I'll create a line and then get the properties.<\/p><pre style=\"background: #F9F7F3; padding: 10px; border: 1px solid rgb(200,200,200)\">h = plot(m3(:,1));\r\nget(h)<\/pre><pre style=\"font-style:oblique\">           DisplayName: ''\r\n            Annotation: [1x1 hg.Annotation]\r\n                 Color: [0 0 1]\r\n             EraseMode: 'normal'\r\n             LineStyle: '-'\r\n             LineWidth: 0.5000\r\n                Marker: 'none'\r\n            MarkerSize: 6\r\n       MarkerEdgeColor: 'auto'\r\n       MarkerFaceColor: 'none'\r\n                 XData: [1 2 3]\r\n                 YData: [8 3 4]\r\n                 ZData: [1x0 double]\r\n          BeingDeleted: 'off'\r\n         ButtonDownFcn: []\r\n              Children: [0x1 double]\r\n              Clipping: 'on'\r\n             CreateFcn: []\r\n             DeleteFcn: []\r\n            BusyAction: 'queue'\r\n      HandleVisibility: 'on'\r\n               HitTest: 'on'\r\n         Interruptible: 'on'\r\n              Selected: 'off'\r\n    SelectionHighlight: 'on'\r\n                   Tag: ''\r\n                  Type: 'line'\r\n         UIContextMenu: []\r\n              UserData: []\r\n               Visible: 'on'\r\n                Parent: 161.0015\r\n             XDataMode: 'auto'\r\n           XDataSource: ''\r\n           YDataSource: ''\r\n           ZDataSource: ''\r\n<\/pre><img decoding=\"async\" vspace=\"5\" hspace=\"5\" src=\"https:\/\/blogs.mathworks.com\/images\/loren\/119\/colorLineStyle_04.png\"> <p>To see what the default properties are, I can use <a href=\"https:\/\/www.mathworks.com\/help\/matlab\/ref\/set.html\"><tt>set<\/tt><\/a> instead of <a href=\"https:\/\/www.mathworks.com\/help\/matlab\/ref\/get.html\"><tt>get<\/tt><\/a>.\r\n   <\/p><pre style=\"background: #F9F7F3; padding: 10px; border: 1px solid rgb(200,200,200)\">set(h)<\/pre><pre style=\"font-style:oblique\">ans = \r\n           DisplayName: {}\r\n                 Color: {}\r\n             EraseMode: {4x1 cell}\r\n             LineStyle: {5x1 cell}\r\n             LineWidth: {}\r\n                Marker: {14x1 cell}\r\n            MarkerSize: {}\r\n       MarkerEdgeColor: {2x1 cell}\r\n       MarkerFaceColor: {2x1 cell}\r\n                 XData: {}\r\n                 YData: {}\r\n                 ZData: {}\r\n         ButtonDownFcn: {}\r\n              Children: {}\r\n              Clipping: {2x1 cell}\r\n             CreateFcn: {}\r\n             DeleteFcn: {}\r\n            BusyAction: {2x1 cell}\r\n      HandleVisibility: {3x1 cell}\r\n               HitTest: {2x1 cell}\r\n         Interruptible: {2x1 cell}\r\n              Selected: {2x1 cell}\r\n    SelectionHighlight: {2x1 cell}\r\n                   Tag: {}\r\n         UIContextMenu: {}\r\n              UserData: {}\r\n               Visible: {2x1 cell}\r\n                Parent: {}\r\n             XDataMode: {2x1 cell}\r\n           XDataSource: {}\r\n           YDataSource: {}\r\n           ZDataSource: {}\r\n<\/pre><p>Notice two particular properties, <tt>Color<\/tt> and <tt>LineStyle<\/tt>.  <tt>get<\/tt> shows me the current values.\r\n   <\/p><pre style=\"background: #F9F7F3; padding: 10px; border: 1px solid rgb(200,200,200)\">get(h,<span style=\"color: #A020F0\">'Color'<\/span>)<\/pre><pre style=\"font-style:oblique\">ans =\r\n     0     0     1\r\n<\/pre><p><tt>set<\/tt> allows me to see the choices for that property.\r\n   <\/p><pre style=\"background: #F9F7F3; padding: 10px; border: 1px solid rgb(200,200,200)\">set(h,<span style=\"color: #A020F0\">'LineStyle'<\/span>)<\/pre><pre style=\"font-style:oblique\">[ {-} | -- | : | -. | none ]\r\n<\/pre><h3>How Do axes Fit in?<a name=\"10\"><\/a><\/h3>\r\n   <p>Each line has a color and a linestyle, and they each have defaults, so what determines the behavior when I plotted multiple\r\n      lines and got different colors?  That's related to a property of <a href=\"https:\/\/www.mathworks.com\/help\/matlab\/ref\/axes.html\"><tt>axes<\/tt><\/a> which we can see here.\r\n   <\/p><pre style=\"background: #F9F7F3; padding: 10px; border: 1px solid rgb(200,200,200)\">get(gca)<\/pre><pre style=\"font-style:oblique\">\tActivePositionProperty = outerposition\r\n\tALim = [0 1]\r\n\tALimMode = auto\r\n\tAmbientLightColor = [1 1 1]\r\n\tBox = on\r\n\tCameraPosition = [2 5.5 17.3205]\r\n\tCameraPositionMode = auto\r\n\tCameraTarget = [2 5.5 0]\r\n\tCameraTargetMode = auto\r\n\tCameraUpVector = [0 1 0]\r\n\tCameraUpVectorMode = auto\r\n\tCameraViewAngle = [6.60861]\r\n\tCameraViewAngleMode = auto\r\n\tCLim = [0 1]\r\n\tCLimMode = auto\r\n\tColor = [1 1 1]\r\n\tCurrentPoint = [ (2 by 3) double array]\r\n\tColorOrder = [ (7 by 3) double array]\r\n\tDataAspectRatio = [1 2.5 1]\r\n\tDataAspectRatioMode = auto\r\n\tDrawMode = normal\r\n\tFontAngle = normal\r\n\tFontName = Helvetica\r\n\tFontSize = [10]\r\n\tFontUnits = points\r\n\tFontWeight = normal\r\n\tGridLineStyle = :\r\n\tLayer = bottom\r\n\tLineStyleOrder = -\r\n\tLineWidth = [0.5]\r\n\tMinorGridLineStyle = :\r\n\tNextPlot = replace\r\n\tOuterPosition = [0 0 1 1]\r\n\tPlotBoxAspectRatio = [1 1 1]\r\n\tPlotBoxAspectRatioMode = auto\r\n\tProjection = orthographic\r\n\tPosition = [0.13 0.11 0.775 0.815]\r\n\tTickLength = [0.01 0.025]\r\n\tTickDir = in\r\n\tTickDirMode = auto\r\n\tTightInset = [0.0392857 0.0404762 0.00892857 0.0190476]\r\n\tTitle = [166.002]\r\n\tUnits = normalized\r\n\tView = [0 90]\r\n\tXColor = [0 0 0]\r\n\tXDir = normal\r\n\tXGrid = off\r\n\tXLabel = [163.002]\r\n\tXAxisLocation = bottom\r\n\tXLim = [1 3]\r\n\tXLimMode = auto\r\n\tXMinorGrid = off\r\n\tXMinorTick = off\r\n\tXScale = linear\r\n\tXTick = [ (1 by 11) double array]\r\n\tXTickLabel = [ (11 by 3) char array]\r\n\tXTickLabelMode = auto\r\n\tXTickMode = auto\r\n\tYColor = [0 0 0]\r\n\tYDir = normal\r\n\tYGrid = off\r\n\tYLabel = [164.002]\r\n\tYAxisLocation = left\r\n\tYLim = [3 8]\r\n\tYLimMode = auto\r\n\tYMinorGrid = off\r\n\tYMinorTick = off\r\n\tYScale = linear\r\n\tYTick = [ (1 by 11) double array]\r\n\tYTickLabel = [ (11 by 3) char array]\r\n\tYTickLabelMode = auto\r\n\tYTickMode = auto\r\n\tZColor = [0 0 0]\r\n\tZDir = normal\r\n\tZGrid = off\r\n\tZLabel = [165.002]\r\n\tZLim = [-1 1]\r\n\tZLimMode = auto\r\n\tZMinorGrid = off\r\n\tZMinorTick = off\r\n\tZScale = linear\r\n\tZTick = [-1 0 1]\r\n\tZTickLabel = \r\n\tZTickLabelMode = auto\r\n\tZTickMode = auto\r\n\r\n\tBeingDeleted = off\r\n\tButtonDownFcn = \r\n\tChildren = [162.004]\r\n\tClipping = on\r\n\tCreateFcn = \r\n\tDeleteFcn = \r\n\tBusyAction = queue\r\n\tHandleVisibility = on\r\n\tHitTest = on\r\n\tInterruptible = on\r\n\tParent = [1]\r\n\tSelected = off\r\n\tSelectionHighlight = on\r\n\tTag = \r\n\tType = axes\r\n\tUIContextMenu = []\r\n\tUserData = []\r\n\tVisible = on\r\n\r\n<\/pre><p>Well, hmmmm -- so many properties.  Let me point out the two that are the ones to focus on for now.<\/p><pre style=\"background: #F9F7F3; padding: 10px; border: 1px solid rgb(200,200,200)\">get(gca,<span style=\"color: #A020F0\">'ColorOrder'<\/span>)<\/pre><pre style=\"font-style:oblique\">ans =\r\n         0         0    1.0000\r\n         0    0.5000         0\r\n    1.0000         0         0\r\n         0    0.7500    0.7500\r\n    0.7500         0    0.7500\r\n    0.7500    0.7500         0\r\n    0.2500    0.2500    0.2500\r\n<\/pre><pre style=\"background: #F9F7F3; padding: 10px; border: 1px solid rgb(200,200,200)\">get(gca,<span style=\"color: #A020F0\">'LineStyleOrder'<\/span>)<\/pre><pre style=\"font-style:oblique\">ans =\r\n-\r\n<\/pre><p>Note: using <tt>gca<\/tt> is really only for debugging or illustration.  Normally a handle should be gotten from the chosen <tt>axes<\/tt> and that handle specifically should be used.\r\n   <\/p>\r\n   <h3>axes Properties ColorOrder and LineStyleOrder<a name=\"14\"><\/a><\/h3>\r\n   <p>There are two <tt>axes<\/tt> properties that you can set to help you make the lines in your plots follow a pattern of color and linestyle.  To see how\r\n      these work, let's set the defaults for these properties at the root of the handle graphics hierarchy and experiment.\r\n   <\/p><pre style=\"background: #F9F7F3; padding: 10px; border: 1px solid rgb(200,200,200)\">set(0,<span style=\"color: #A020F0\">'DefaultAxesLineStyleOrder'<\/span>,{<span style=\"color: #A020F0\">'--'<\/span>,<span style=\"color: #A020F0\">':'<\/span>})\r\nset(0,<span style=\"color: #A020F0\">'DefaultAxesColorOrder'<\/span>,[1 0 1; 0 1 1; 0 1 0])\r\nyvals = [1:10;1:10]\r\nplot(yvals)\r\naxis([1 2 0 size(yvals,2)+1 ])<\/pre><pre style=\"font-style:oblique\">yvals =\r\n     1     2     3     4     5     6     7     8     9    10\r\n     1     2     3     4     5     6     7     8     9    10\r\n<\/pre><img decoding=\"async\" vspace=\"5\" hspace=\"5\" src=\"https:\/\/blogs.mathworks.com\/images\/loren\/119\/colorLineStyle_05.png\"> <p>Now you see that MATLAB first cycles over the colors using the first linestyle, then again cycles over the colors with the\r\n      second linestyle, etc., eventually cycling over the linestyles again as well.\r\n   <\/p>\r\n   <h3>Do You Override the Defaults?<a name=\"16\"><\/a><\/h3>\r\n   <p>Do you override the line plotting defaults?  Do you do this manually or by setting the defaults as I have shown here?  Let\r\n      me know <a href=\"https:\/\/blogs.mathworks.com\/loren\/?p=120#respond\">here<\/a> how you avoid hand-updating your plots.\r\n   <\/p><script language=\"JavaScript\">\r\n<!--\r\n\r\n    function grabCode_3d2a90b5511141a1b334ccf68ba2aeaa() {\r\n        \/\/ Remember the title so we can use it in the new page\r\n        title = document.title;\r\n\r\n        \/\/ Break up these strings so that their presence\r\n        \/\/ in the Javascript doesn't mess up the search for\r\n        \/\/ the MATLAB code.\r\n        t1='3d2a90b5511141a1b334ccf68ba2aeaa ' + '##### ' + 'SOURCE BEGIN' + ' #####';\r\n        t2='##### ' + 'SOURCE END' + ' #####' + ' 3d2a90b5511141a1b334ccf68ba2aeaa';\r\n    \r\n        b=document.getElementsByTagName('body')[0];\r\n        i1=b.innerHTML.indexOf(t1)+t1.length;\r\n        i2=b.innerHTML.indexOf(t2);\r\n \r\n        code_string = b.innerHTML.substring(i1, i2);\r\n        code_string = code_string.replace(\/REPLACE_WITH_DASH_DASH\/g,'--');\r\n\r\n        \/\/ Use \/x3C\/g instead of the less-than character to avoid errors \r\n        \/\/ in the XML parser.\r\n        \/\/ Use '\\x26#60;' instead of '<' so that the XML parser\r\n        \/\/ doesn't go ahead and substitute the less-than character. \r\n        code_string = code_string.replace(\/\\x3C\/g, '\\x26#60;');\r\n\r\n        author = 'Loren Shure';\r\n        copyright = 'Copyright 2007 The MathWorks, Inc.';\r\n\r\n        w = window.open();\r\n        d = w.document;\r\n        d.write('<pre>\\n');\r\n        d.write(code_string);\r\n\r\n        \/\/ Add author and copyright lines at the bottom if specified.\r\n        if ((author.length > 0) || (copyright.length > 0)) {\r\n            d.writeln('');\r\n            d.writeln('%%');\r\n            if (author.length > 0) {\r\n                d.writeln('% _' + author + '_');\r\n            }\r\n            if (copyright.length > 0) {\r\n                d.writeln('% _' + copyright + '_');\r\n            }\r\n        }\r\n\r\n        d.write('<\/pre>\\n');\r\n      \r\n      d.title = title + ' (MATLAB code)';\r\n      d.close();\r\n      }   \r\n      \r\n-->\r\n<\/script><p style=\"text-align: right; font-size: xx-small; font-weight:lighter;   font-style: italic; color: gray\"><br><a href=\"javascript:grabCode_3d2a90b5511141a1b334ccf68ba2aeaa()\"><span style=\"font-size: x-small;        font-style: italic;\">Get \r\n            the MATLAB code \r\n            <noscript>(requires JavaScript)<\/noscript><\/span><\/a><br><br>\r\n      Published with MATLAB&reg; 7.5<br><\/p>\r\n<\/div>\r\n<!--\r\n3d2a90b5511141a1b334ccf68ba2aeaa ##### SOURCE BEGIN #####\r\n%% Plotting with Style\r\n% One of MATLAB's features is being able to customize plots.  But some of\r\n% the customization may not need to be done by hand and can instead be\r\n% controlled programmatically.  Let me show you a set of these having to do\r\n% with plotting lines.\r\n%% Plotting by Adding Lines\r\n% If you make a plot by successively adding lines, all the lines, by\r\n% default, have the same color and linestyle.\r\nm3 = magic(3);\r\nplot(m3(:,1));\r\nhold on\r\nplot(m3(:,2))\r\nplot(m3(:,3))\r\nhold off\r\n%%\r\n% As you can see, it's very hard (impossible) to tell which line is which.\r\n%% Manually Control Color and Style\r\n% I can distinguish the lines by using different colors and linestyles.\r\n% Here's one way to do it.\r\nplot(m3(:,1),'r');\r\nhold on\r\nplot(m3(:,2),':b')\r\nplot(m3(:,3),'gREPLACE_WITH_DASH_DASH')\r\nhold off\r\n%% Vectorizing Line Drawing\r\n% I can instead vectorize the line drawing.\r\nplot(m3)\r\n%%\r\n% What you see here is the MATLAB cycles through colors to distinguish the\r\n% plots.  How many colors and which ones?  Does MATLAB ever cycle through\r\n% the linestyles?  You can find out answers to these questions in the\r\n% documentation on\r\n% <https:\/\/www.mathworks.com\/access\/helpdesk\/help\/techdoc\/ref\/line_props.html#LineStyle |LineStyle|>\r\n% and\r\n% <https:\/\/www.mathworks.com\/access\/helpdesk\/help\/techdoc\/ref\/line_props.html#Color |Color|> \r\n% as well as some answers in this article.\r\n%% Default Line Properties\r\n% Let's see what properties lines in MATLAB have.  First I'll create a line\r\n% and then get the properties.\r\nh = plot(m3(:,1)); \r\nget(h)\r\n%%\r\n% To see what the default properties are, I can use \r\n% <https:\/\/www.mathworks.com\/help\/matlab\/ref\/set.html |set|>\r\n% instead of <https:\/\/www.mathworks.com\/help\/matlab\/ref\/get.html |get|>.\r\nset(h)\r\n%%\r\n% Notice two particular properties, |Color| and |LineStyle|.  |get| shows\r\n% me the current values.\r\nget(h,'Color')\r\n%%\r\n% |set| allows me to see the choices for that property.\r\nset(h,'LineStyle')\r\n%% How Do axes Fit in?\r\n% Each line has a color and a linestyle, and they each have defaults, so\r\n% what determines the behavior when I plotted multiple lines and got\r\n% different colors?  That's related to a property of\r\n% <https:\/\/www.mathworks.com\/help\/matlab\/ref\/axes.html |axes|>\r\n% which we can see here.\r\nget(gca)\r\n%%\r\n% Well, hmmmm REPLACE_WITH_DASH_DASH so many properties.  Let me point out the two that are the\r\n% ones to focus on for now.\r\nget(gca,'ColorOrder')\r\n%%\r\n%\r\nget(gca,'LineStyleOrder')\r\n%%\r\n% Note: using |gca| is really only for debugging or illustration.  Normally\r\n% a handle should be gotten from the chosen |axes| and that handle\r\n% specifically should be used.\r\n%% axes Properties ColorOrder and LineStyleOrder\r\n% There are two |axes| properties that you can set to help you make the\r\n% lines in your plots follow a pattern of color and linestyle.  To see how\r\n% these work, let's set the defaults for these properties at the root of\r\n% the handle graphics hierarchy and experiment.\r\nset(0,'DefaultAxesLineStyleOrder',{'REPLACE_WITH_DASH_DASH',':'})\r\nset(0,'DefaultAxesColorOrder',[1 0 1; 0 1 1; 0 1 0])\r\nyvals = [1:10;1:10]\r\nplot(yvals)\r\naxis([1 2 0 size(yvals,2)+1 ])\r\n%%\r\n% Now you see that MATLAB first cycles over the colors using the first\r\n% linestyle, then again cycles over the colors with the second linestyle,\r\n% etc., eventually cycling over the linestyles again as well.  \r\n%% Do You Override the Defaults?\r\n% Do you override the line plotting defaults?  Do you do this manually or\r\n% by setting the defaults as I have shown here?  Let me know \r\n% <https:\/\/blogs.mathworks.com\/loren\/?p=120#respond here> how you avoid\r\n% hand-updating your plots.\r\n\r\n\r\n\r\n##### SOURCE END ##### 3d2a90b5511141a1b334ccf68ba2aeaa\r\n-->","protected":false},"excerpt":{"rendered":"<p>\r\n   \r\n      One of MATLAB's features is being able to customize plots.  But some of the customization may not need to be done by hand\r\n         and can instead be controlled programmatically.  Let... <a class=\"read-more\" href=\"https:\/\/blogs.mathworks.com\/loren\/2007\/12\/19\/plotting-with-style\/\">read more >><\/a><\/p>","protected":false},"author":39,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":[],"categories":[21,15],"tags":[],"_links":{"self":[{"href":"https:\/\/blogs.mathworks.com\/loren\/wp-json\/wp\/v2\/posts\/120"}],"collection":[{"href":"https:\/\/blogs.mathworks.com\/loren\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blogs.mathworks.com\/loren\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blogs.mathworks.com\/loren\/wp-json\/wp\/v2\/users\/39"}],"replies":[{"embeddable":true,"href":"https:\/\/blogs.mathworks.com\/loren\/wp-json\/wp\/v2\/comments?post=120"}],"version-history":[{"count":1,"href":"https:\/\/blogs.mathworks.com\/loren\/wp-json\/wp\/v2\/posts\/120\/revisions"}],"predecessor-version":[{"id":2110,"href":"https:\/\/blogs.mathworks.com\/loren\/wp-json\/wp\/v2\/posts\/120\/revisions\/2110"}],"wp:attachment":[{"href":"https:\/\/blogs.mathworks.com\/loren\/wp-json\/wp\/v2\/media?parent=120"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blogs.mathworks.com\/loren\/wp-json\/wp\/v2\/categories?post=120"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blogs.mathworks.com\/loren\/wp-json\/wp\/v2\/tags?post=120"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}