{"id":441,"date":"2015-05-01T16:29:10","date_gmt":"2015-05-01T16:29:10","guid":{"rendered":"http:\/\/ahay.org\/blog\/?p=441"},"modified":"2015-09-29T22:19:13","modified_gmt":"2015-09-29T22:19:13","slug":"program-of-the-month-sfbox","status":"publish","type":"post","link":"https:\/\/ahay.org\/blog\/2015\/05\/01\/program-of-the-month-sfbox\/","title":{"rendered":"Program of the month: sfbox"},"content":{"rendered":"<p><a href=\"\/RSF\/sfbox.html\">sfbox<\/a> draws a boxed baloon-style label, which is useful for annotating graphics. <\/p>\n<p>The following example from <a href=\"\/RSF\/book\/sep\/avo\/imp.html\">sep\/avo\/imp<\/a> annotates several reflectors on a  seismic section:<\/p>\n<p><img decoding=\"async\" src=\"\/RSF\/book\/sep\/avo\/imp\/Fig\/pimp-ann.png\" alt=\"\" title=\"\" \/><\/p>\n<p><strong>sfbox<\/strong> has a large number of parameters to control the box appearance. The most important are: <strong>label=<\/strong> for the text on the label, <strong>x0=<\/strong> and <strong>y0<\/strong> for the position of the pointer tip (in Vplot coordinates), <strong>xt=<\/strong> and <strong>yt=<\/strong> for the relative shift of the label with respect to the pointer tip.<\/p>\n<p>The following example from <a href=\"\/RSF\/book\/tccs\/timelapse\/duri.html\">tccs\/timelapse\/duri<\/a> uses <strong>xt=0<\/strong> and  <strong>yt=0<\/strong> to hide the pointer under the label.<\/p>\n<p><img decoding=\"async\" src=\"\/RSF\/book\/tccs\/timelapse\/duri\/Fig\/difc2.png\" alt=\"\" title=\"\" \/><\/p>\n<p>Selecting proper parameters for the location of the label can be tricky. The task is made interactive by the <a href=\"https:\/\/github.com\/ahay\/src\/blob\/master\/pens\/scripts\/vpannotate.py\">vpannotate<\/a> script. <strong>vpannotate<\/strong> takes a Vplot file as an input and adds an annotation to it. It can do it in the batch mode (when used with <strong>batch=y<\/strong>) or in an interactive mode (when used with <strong>batch=n<\/strong>). In the later case, the selected parameters are saved in a text file, which can be used as a parameter file for <strong>sfbox<\/strong> (or, alternatively, for <strong>vpannotate batch=y<\/strong>).<\/p>\n<h3 id=\"10previousprogramsofthemonth\">10 previous programs of the month<\/h3>\n<ul>\n<li><a href=\"\/blog\/2015\/04\/21\/program-of-the-month-sfslant\/\">sfslant<\/a><\/li>\n<li><a href=\"\/blog\/2015\/03\/04\/program-of-the-month-sfgrey\/\">sfgrey<\/a><\/li>\n<li><a href=\"\/blog\/2015\/03\/01\/program-of-the-month-sfhistogram\/\">sfhistogram<\/a><\/li>\n<li><a href=\"\/blog\/2015\/01\/30\/program-of-the-month-sfmf\/\">sfmf<\/a><\/li>\n<li><a href=\"\/blog\/2014\/12\/01\/program-of-the-month-sfbin\/\">sfbin<\/a><\/li>\n<li><a href=\"\/blog\/2014\/11\/12\/program-of-the-month-sfthreshold\/\">sfthreshold<\/a><\/li>\n<li><a href=\"\/blog\/2014\/10\/08\/program-of-the-month-sfsigmoid\/\">sfsigmoid<\/a><\/li>\n<li><a href=\"\/blog\/2014\/09\/24\/program-of-the-month-sfmax1\/\">sfmax1<\/a><\/li>\n<li><a href=\"\/blog\/2014\/08\/03\/program-of-the-month-sfstolt\/\">sfstolt<\/a><\/li>\n<li><a href=\"\/blog\/2014\/07\/13\/program-of-the-month-sfltft\/\">sfltft<\/a><\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>sfbox draws a boxed baloon-style label, which is useful for annotating graphics. The following example from sep\/avo\/imp annotates several reflectors on a seismic section: sfbox has a large number of parameters to control the box appearance. The most important are: label= for the text on the label, x0= and y0 for the position of the [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_import_markdown_pro_load_document_selector":0,"_import_markdown_pro_submit_text_textarea":"","activitypub_content_warning":"","activitypub_content_visibility":"local","activitypub_max_image_attachments":4,"activitypub_interaction_policy_quote":"","footnotes":""},"categories":[8],"tags":[],"class_list":["post-441","post","type-post","status-publish","format-standard","hentry","category-celebration"],"_links":{"self":[{"href":"https:\/\/ahay.org\/blog\/wp-json\/wp\/v2\/posts\/441","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/ahay.org\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/ahay.org\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/ahay.org\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/ahay.org\/blog\/wp-json\/wp\/v2\/comments?post=441"}],"version-history":[{"count":5,"href":"https:\/\/ahay.org\/blog\/wp-json\/wp\/v2\/posts\/441\/revisions"}],"predecessor-version":[{"id":22989,"href":"https:\/\/ahay.org\/blog\/wp-json\/wp\/v2\/posts\/441\/revisions\/22989"}],"wp:attachment":[{"href":"https:\/\/ahay.org\/blog\/wp-json\/wp\/v2\/media?parent=441"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/ahay.org\/blog\/wp-json\/wp\/v2\/categories?post=441"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/ahay.org\/blog\/wp-json\/wp\/v2\/tags?post=441"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}