{"id":45,"date":"2012-05-20T03:18:26","date_gmt":"2012-05-20T03:18:26","guid":{"rendered":"http:\/\/blog.ufes.br\/fabiomolinares\/?p=45"},"modified":"2012-08-17T03:54:40","modified_gmt":"2012-08-17T03:54:40","slug":"como-usar-o-pgfplots-para-construir-boxplots","status":"publish","type":"post","link":"https:\/\/blog.ufes.br\/fabiomolinares\/2012\/05\/20\/como-usar-o-pgfplots-para-construir-boxplots\/","title":{"rendered":"Using pgfplots to make boxplots in LaTeX"},"content":{"rendered":"<h1>Here&#8217;s an example:<\/h1>\n<pre><\/pre>\n<pre><code>\\documentclass{article}\r\n\\usepackage{pgfplots}\r\n\\usepackage{filecontents}\r\n\r\n\\begin{filecontents}{testdata.dat}\r\n0 1 1.2 0.4 1.5 0.2\r\n1 2 2.3 1.5 2.7 1\r\n2 0.7 1.4 0.5 1.9 0.1\r\n\\end{filecontents}\r\n\r\n\\pgfplotsset{\r\n\u00a0 \u00a0 box plot\/.style={\r\n\u00a0 \u00a0 \u00a0 \u00a0 \/pgfplots\/.cd,\r\n\u00a0 \u00a0 \u00a0 \u00a0 black,\r\n\u00a0 \u00a0 \u00a0 \u00a0 only marks,\r\n\u00a0 \u00a0 \u00a0 \u00a0 mark=-,\r\n\u00a0 \u00a0 \u00a0 \u00a0 mark size=1em,\r\n\u00a0 \u00a0 \u00a0 \u00a0 \/pgfplots\/error bars\/.cd,\r\n\u00a0 \u00a0 \u00a0 \u00a0 y dir=plus,\r\n\u00a0 \u00a0 \u00a0 \u00a0 y explicit,\r\n\u00a0 \u00a0 },\r\n\u00a0 \u00a0 box plot box\/.style={\r\n\u00a0 \u00a0 \u00a0 \u00a0 \/pgfplots\/error bars\/draw error bar\/.code 2 args={%\r\n\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \\draw \u00a0##1 -- ++(1em,0pt) |- ##2 -- ++(-1em,0pt) |- ##1 -- cycle;\r\n\u00a0 \u00a0 \u00a0 \u00a0 },\r\n\u00a0 \u00a0 \u00a0 \u00a0 \/pgfplots\/table\/.cd,\r\n\u00a0 \u00a0 \u00a0 \u00a0 y index=2,\r\n\u00a0 \u00a0 \u00a0 \u00a0 y error expr={\\thisrowno{3}-\\thisrowno{2}},\r\n\u00a0 \u00a0 \u00a0 \u00a0 \/pgfplots\/box plot\r\n\u00a0 \u00a0 },\r\n\u00a0 \u00a0 box plot top whisker\/.style={\r\n\u00a0 \u00a0 \u00a0 \u00a0 \/pgfplots\/error bars\/draw error bar\/.code 2 args={%\r\n\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \\pgfkeysgetvalue{\/pgfplots\/error bars\/error mark}%\r\n\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 {\\pgfplotserrorbarsmark}%\r\n\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \\pgfkeysgetvalue{\/pgfplots\/error bars\/error mark options}%\r\n\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 {\\pgfplotserrorbarsmarkopts}%\r\n\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \\path ##1 -- ##2;\r\n\u00a0 \u00a0 \u00a0 \u00a0 },\r\n\u00a0 \u00a0 \u00a0 \u00a0 \/pgfplots\/table\/.cd,\r\n\u00a0 \u00a0 \u00a0 \u00a0 y index=4,\r\n\u00a0 \u00a0 \u00a0 \u00a0 y error expr={\\thisrowno{2}-\\thisrowno{4}},\r\n\u00a0 \u00a0 \u00a0 \u00a0 \/pgfplots\/box plot\r\n\u00a0 \u00a0 },\r\n\u00a0 \u00a0 box plot bottom whisker\/.style={\r\n\u00a0 \u00a0 \u00a0 \u00a0 \/pgfplots\/error bars\/draw error bar\/.code 2 args={%\r\n\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \\pgfkeysgetvalue{\/pgfplots\/error bars\/error mark}%\r\n\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 {\\pgfplotserrorbarsmark}%\r\n\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \\pgfkeysgetvalue{\/pgfplots\/error bars\/error mark options}%\r\n\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 {\\pgfplotserrorbarsmarkopts}%\r\n\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \\path ##1 -- ##2;\r\n\u00a0 \u00a0 \u00a0 \u00a0 },\r\n\u00a0 \u00a0 \u00a0 \u00a0 \/pgfplots\/table\/.cd,\r\n\u00a0 \u00a0 \u00a0 \u00a0 y index=5,\r\n\u00a0 \u00a0 \u00a0 \u00a0 y error expr={\\thisrowno{3}-\\thisrowno{5}},\r\n\u00a0 \u00a0 \u00a0 \u00a0 \/pgfplots\/box plot\r\n\u00a0 \u00a0 },\r\n\u00a0 \u00a0 box plot median\/.style={\r\n\u00a0 \u00a0 \u00a0 \u00a0 \/pgfplots\/box plot\r\n\u00a0 \u00a0 }\r\n}\r\n\r\n\\begin{document}\r\n\\begin{tikzpicture}\r\n\\begin{axis} [enlarge x limits=0.5,xtick=data]\r\n\u00a0 \u00a0 \\addplot [box plot median] table {testdata.dat};\r\n\u00a0 \u00a0 \\addplot [box plot box] table {testdata.dat};\r\n\u00a0 \u00a0 \\addplot [box plot top whisker] table {testdata.dat};\r\n\u00a0 \u00a0 \\addplot [box plot bottom whisker] table {testdata.dat};\r\n\\end{axis}\r\n\\end{tikzpicture}\r\n\\end{document}<\/code><\/pre>\n<pre><a title=\".\" href=\"http:\/\/tex.stackexchange.com\/questions\/3983\/can-i-use-pgfplots-to-make-a-boxplot\" target=\"_blank\">.<\/a><\/pre>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Here&#8217;s an example: \\documentclass{article} \\usepackage{pgfplots} \\usepackage{filecontents} \\begin{filecontents}{testdata.dat} 0 1 1.2 0.4 1.5 0.2 1 2 2.3 1.5 2.7 1 2 0.7 1.4 0.5 1.9 0.1 \\end{filecontents} \\pgfplotsset{ \u00a0 \u00a0 box plot\/.style={ \u00a0 \u00a0 \u00a0 \u00a0 \/pgfplots\/.cd, \u00a0 \u00a0 \u00a0 \u00a0 black, \u00a0 \u00a0 \u00a0 \u00a0 only marks, \u00a0 \u00a0 \u00a0 \u00a0 mark=-, \u00a0 \u00a0 \u00a0 [&hellip;]<\/p>\n","protected":false},"author":38,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_bbp_topic_count":0,"_bbp_reply_count":0,"_bbp_total_topic_count":0,"_bbp_total_reply_count":0,"_bbp_voice_count":0,"_bbp_anonymous_reply_count":0,"_bbp_topic_count_hidden":0,"_bbp_reply_count_hidden":0,"_bbp_forum_subforum_count":0,"_uag_custom_page_level_css":"","footnotes":""},"categories":[3],"tags":[],"class_list":["post-45","post","type-post","status-publish","format-standard","hentry","category-latex"],"uagb_featured_image_src":{"full":false,"thumbnail":false,"medium":false,"medium_large":false,"large":false,"1536x1536":false,"2048x2048":false},"uagb_author_info":{"display_name":"Fabio Fajardo","author_link":"https:\/\/blog.ufes.br\/fabiomolinares\/author\/fabio-molinares\/"},"uagb_comment_info":553,"uagb_excerpt":"Here&#8217;s an example: \\documentclass{article} \\usepackage{pgfplots} \\usepackage{filecontents} \\begin{filecontents}{testdata.dat} 0 1 1.2 0.4 1.5 0.2 1 2 2.3 1.5 2.7 1 2 0.7 1.4 0.5 1.9 0.1 \\end{filecontents} \\pgfplotsset{ \u00a0 \u00a0 box plot\/.style={ \u00a0 \u00a0 \u00a0 \u00a0 \/pgfplots\/.cd, \u00a0 \u00a0 \u00a0 \u00a0 black, \u00a0 \u00a0 \u00a0 \u00a0 only marks, \u00a0 \u00a0 \u00a0 \u00a0 mark=-, \u00a0 \u00a0 \u00a0&hellip;","_links":{"self":[{"href":"https:\/\/blog.ufes.br\/fabiomolinares\/wp-json\/wp\/v2\/posts\/45","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blog.ufes.br\/fabiomolinares\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.ufes.br\/fabiomolinares\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.ufes.br\/fabiomolinares\/wp-json\/wp\/v2\/users\/38"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.ufes.br\/fabiomolinares\/wp-json\/wp\/v2\/comments?post=45"}],"version-history":[{"count":8,"href":"https:\/\/blog.ufes.br\/fabiomolinares\/wp-json\/wp\/v2\/posts\/45\/revisions"}],"predecessor-version":[{"id":48,"href":"https:\/\/blog.ufes.br\/fabiomolinares\/wp-json\/wp\/v2\/posts\/45\/revisions\/48"}],"wp:attachment":[{"href":"https:\/\/blog.ufes.br\/fabiomolinares\/wp-json\/wp\/v2\/media?parent=45"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.ufes.br\/fabiomolinares\/wp-json\/wp\/v2\/categories?post=45"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.ufes.br\/fabiomolinares\/wp-json\/wp\/v2\/tags?post=45"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}