1

I am new to latex. Is there a way to create shogi diagram like this picture using tikzpicture? I have tried tabular with square cell and rotating package for rotating kanji and created some very plain looking diagrams. I have searched through and it seems like tikzpicture grid method with the node in the center to enter the kanji is the better solution, but I have no idea how to do it. I need help with the following:

  1. 1.9x9 square grid with outside border bold
  2. 2.coordinates on the outside of the grid (I tried multicolumn and it messed up my squares)
  3. 3.black dot at the 3x3 square intersection
  4. 4.the kanji center and filled completely in the square (I couldn't figure out how to get the letter to completely fill the square with tabular)

enter image description here

enter image description here

  • 1
    Welcome to TeX.SX. Questions about how to draw specific graphics that just post an image of the desired result are really not reasonable questions to ask on the site. Please post a minimal compilable document showing that you've tried to produce the image and then people will be happy to help you with any specific problems you may have. See minimal working example (MWE) for what needs to go into such a document. – Stefan Pinnow May 13 '19 at 5:02
2

I do not know the kanji characters, so I do not use them. The other points are addressed in this example, I think.

\documentclass[tikz,border=3.14mm]{standalone}
\usetikzlibrary{matrix}
\begin{document}
\begin{tikzpicture}[font=\sffamily]
 \matrix[matrix of nodes,column sep=-\pgflinewidth,row sep=-\pgflinewidth,
 inner sep=0pt,
 draw,thick,nodes={draw,minimum width=1.2em,minimum height=1.2em,anchor=center,
 inner sep=0pt,scale=1.2,outer sep=0pt},
 nodes in empty cells] 
 (mat) {
 A & B & & & & & & & \\
 & & & & & & & & \\
 & & & & & & & & \\
 & & & & & & & & \\
 & & & & C & & & & \\
 & & & & & & & & \\
 & & & & & & & & \\
 & & & & & & & & \\
 & & & & & & & & \\
 };
 \foreach \X [evaluate=\X as \Y using {int(10-\X)}]  in {1,...,9}
 {\node[above] at (mat-1-\Y.north) {\X};}
 \foreach \X [count=\Y]  in {A,B,...,I}
 {\node[right] at (mat-\Y-9.east) {\X};}
 \foreach \X/\Y  in {3/3,6/3,3/6,6/6}
 {\path (mat-\X-\Y) -- (mat-\the\numexpr\X+1\relax-\the\numexpr\Y+1\relax)
 node[midway,circle,fill,inner sep=1.5pt]{};}
\end{tikzpicture}
\end{document}

enter image description here

2

You can abuse the logicpuzzle package.

\documentclass{article}
\usepackage{xcolor}
\usepackage{logicpuzzle}
\renewcommand\familydefault{\sfdefault}
\let\shogiH\shipH
\let\shogiV\sumV
\begin{document}
\begin{logicpuzzle}[rows=9,columns=9,color=yellow,fontsize=huge]
\shogiH{9,8,7,6,5,4,3,2,1}
\shogiV{9,8,7,6,5,4,3,2,1}
\foreach \X/\Y  in {4/4,7/4,4/7,7/7}
  {\node[circle,fill,text width=4mm,inner sep=0pt] at (\X,\Y) {};}
\fillcell{5}{3}
\setrow{7}{4,7,1,{\textcolor{red}{5}},{},2}
\setrow{5}{{},{},{},{},C}
\setrow{3}{3,8,5,{},{4},{},1}
\framepuzzle
\end{logicpuzzle}
\end{document}

example pic

Like marmot, I don't know anything about kanji. But that's a neat exercise for you! ;-)

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.