I'm including a vowel chart in a linguistics document of mine, similar to this, and while I'm aware that there are a couple of packages (TIPA, pst-vowel) that can do the job, I'm interested in trying to draw it using PGF/TikZ. Having not used TikZ before, I'm a little unsure on where to start with this deceptively simple figure.

As I understand it, I'd need to define some kind of skewed grid with [default] nodes at the line intersections, their midpoints, and the middle of each "square". The actual letters would then be drawn on top, positioned by coordinates; at the moment I'm not interested in arbitrary positioning of letters as occurs in the diagram.

Can anyone help me out?

## Best Answer

If you don't require PGF/TikZ 3.0, you can use this trick to emulate an affine transformation.

I define a command whose input is a “Cartesian” coordinate in the range

`(0, 0)`

to`(3, 2)`

, and whose output is a coordinate in the barycentric system¹ defined by the four corners (called`hf`

,`hb`

,`lf`

, and`lb`

) of the trapezoid.Liberal use of this

`\V`

command makes placing nodes in the trapezoid very easy.## Code

## Result

Finally, here is the complete IPA vowel chart drawn in TikZ:

Sorry for the late answer. Still, I hope this helps anyone else wanting to draw this in the future. By the way, you can get the extremely-well-equipped-for-linguistics Brill font here for free.

¹ You can learn about this in section 13.2.2 “Barycentric Systems” of the PGF/TikZ manual.