سعاد نشر 25 ديسمبر 2015 أرسل تقرير نشر 25 ديسمبر 2015 على برنامج تحرير الوثائق LaTeX أريد رسم شكل كهذا الموجود في الصورة:لكني وجدت مشكلة في إدراج الأسهم جهة اليمين، وهذا هو الكود الحالي:\documentclass{article} \usepackage{xcolor} \begin{document} \centering \fboxsep=10mm \fboxrule=0.5mm \fcolorbox{black}{blue!40!white}{{\bf P}}\\[2cm] \fboxsep=3mm \fboxrule=0.5mm \fcolorbox{black}{blue!40!white}{$a_1$}\fcolorbox{black}{blue!40!white}{$o_1$}\fcolorbox{black}{blue!40!white}{$a_2$}\fcolorbox{black}{blue!40!white}{$o_2$}\fcolorbox{black}{blue!40!white}{$a_3$}\fcolorbox{black}{blue!40!white}{$o_4$}\\[2cm] \fboxsep=10mm \fboxrule=0.5mm \fcolorbox{black}{blue!40!white}{{\bf Q}} \end{document}كيف أرسم الشكل أعلاه باستعمال LaTeX؟ اقتباس
0 E.Nourddine نشر 25 ديسمبر 2015 أرسل تقرير نشر 25 ديسمبر 2015 هناك حل باستعمال حزمة TiKZ، وذلك باستخدام الجدول matrix/ ووضع محتواه متوسطا للخانات عن طريق 0pt، مع استعمال أسهم موجهة نحو القيم الموجودة بالجدول، ثم رسم إطار جدول بشكل عريض، بهذه الطريقة:\documentclass[tikz,border=3mm]{standalone} \usetikzlibrary{arrows,matrix,positioning} \begin{document} \begin{tikzpicture}[>=stealth'] \matrix (tape) [matrix of math nodes, inner sep=0pt, nodes={draw, inner sep=3pt, fill=blue!40, outer sep=0pt}, column sep=-\pgflinewidth, inner sep=0pt] {a_1 & o_1 & a_2 & o_2 & a_3 & o_3 & a_4 & o_4 & a_5 & o_5 \\}; \node[draw, minimum width=12mm, above = 6mm of tape-1-5.north east, fill=blue!40] (P) {\rule{0cm}{1cm}P}; \node[draw, minimum width=12mm, below = 6mm of tape-1-5.south east, fill=blue!40] (Q) {\rule{0cm}{1cm}Q}; \draw[<-, shorten <=-2pt] (tape-1-5.north)--(tape-1-5|-P.south); \draw[->, shorten >=-2pt] (tape-1-5.south)--(tape-1-5|-Q.north); \draw[->, shorten >=-2pt] (tape-1-6.north)--(tape-1-6|-P.south); \draw[<-, shorten <=-2pt] (tape-1-6.south)--(tape-1-6|-Q.north); \draw[shorten <=-1mm, shorten >=-1mm] ([xshift=2mm]tape-1-10.north east) to [bend left] ([xshift=2mm]tape-1-10.east) to [bend right] ([xshift=2mm]tape-1-10.south east); \draw[shorten <=-1mm, shorten >=-1mm] ([xshift=3mm]tape-1-10.north east) to [bend left] ([xshift=3mm]tape-1-10.east) to [bend right] ([xshift=3mm]tape-1-10.south east); \draw[fill=blue!40] (tape-1-10.north east)--([xshift=2mm]tape-1-10.north east) to [bend left] ([xshift=2mm]tape-1-10.east) to [bend right] ([xshift=2mm]tape-1-10.south east)--(tape-1-10.south east)--cycle; \draw[thick] ([xshift=2mm]tape-1-10.north east)-|(tape-1-1.west)|-([xshift=2mm]tape-1-10.south east); \end{tikzpicture} \end{document}لتكون النتيجة بالشكل التالي: اقتباس
السؤال
سعاد
على برنامج تحرير الوثائق LaTeX أريد رسم شكل كهذا الموجود في الصورة:
لكني وجدت مشكلة في إدراج الأسهم جهة اليمين، وهذا هو الكود الحالي:
كيف أرسم الشكل أعلاه باستعمال LaTeX؟
1 جواب على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.