0
$\begingroup$

I am new on Mathematica and I don't know much about plotting.
I would like to get something like the following picture, which represents the real projective line for a given sequence of numbers (inside) and the corresponding bits (outside the circle).

enter image description here

The pairs of number-bits are stored in a Table. If the solution would be easier to adapt to different tables it would be great.
The main idea is to divide the circunference into n equidistant points and assign a label to each point. Can anybody help me please.

$\endgroup$
  • 5
    $\begingroup$ Please show some effort here, not only is that welcomed but also required: mathematica.stackexchange.com/help/on-topic. Not to mention there isn't anything to work with. Please provide your list ('table') and let us know where are you stuck. $\endgroup$ – Kuba Nov 4 '18 at 23:11
5
$\begingroup$

I made this plot in order to make clearer what this circle is.

you can keep the things you like and try stuff by yourself.

otherwise this would be like replicating an image challenge...

Show[Graphics[{Line[{{-2, 0}, {2, 0}}], Green, Circle[{0, 1}], Red, 
Line[{{0, 0}, {1, 1}}], Line[{{0, 0}, {1, 0}}], 
Line[{{0, 0}, {1, 1/4}}], Line[{{0, 0}, {1, 4}}], 
Line[{{-1, 1}, {1, -1}}], Line[{{-1, 1/4}, {1, -1/4}}], 
Line[{{-1, 4}, {1, -4}}], Purple, Line[{{1, 5}, {1, -5}}], Black, 
Text[Style["4", 15], {1.2, 4}], Point[{1, 4}], 
Text[Style["1", 15], {1.2, 1}], Point[{1, 1}], 
Text[Style["1/4", 15], {1.2, 1/4}], Point[{1, 1/4}], 
Text[Style["-4", 15], {1.2, -4}], Point[{1, -4}], 
Text[Style["-1", 15], {1.2, -1}], Point[{1, -1}], 
Text[Style["-1/4", 15], {1.2, -1/4}], Point[{1, -1/4}], 
Text[Style["0", Purple, 20], {-.1, -0.2}], 
Text[Style["4", Purple, 20], {0.4, 2.05}], 
Point[{0.470588, 1.88235}], 
Text[Style["-4", Purple, 20], {-0.35, 2.05}], 
Point[{-0.470588, 1.88235}], 
Text[Style["-1", Purple, 20], {-1.2, 1}], Point[{-1, 1}], 
Text[Style["\!\(\*
StyleBox[\"\[PlusMinus]\", \"OperatorCharacter\"]\)\[Infinity]", 
Purple, 20], {0, 2.1}], 
Text[Style["+\[Infinity]", 20], {1.2, 5}], 
Text[Style["-\[Infinity]", 20], {1.2, -5}], Point[{-1, 1}]}, 
AxesStyle -> Black]]  

enter image description here

Here is also the basics for making the image you want..

t1 = "" <> ToString /@ # & /@ Tuples[{0, 1}, 3];
t2 = {"0   ", "1/4", "1   ", "4   ", "\[PlusMinus]\[Infinity]", "-4", 
"-1", "-1/4"};
Graphics[{Green, Thick, 
Circle[], {Arrowheads[.1], 
Arrow[{{0.2, 0.98}, {0.01, 1}}]}, {Arrowheads[.1], 
Arrow[{{-0.2, 0.98}, {0.01, 1}}]}, Black, PointSize[Large], 
Point[c = CirclePoints[{1, 4.7}, 8]], 
Table[Text[Style[t2[[i]] <> "    " <> t1[[i]], 15], c[[i]], 
Automatic, c[[i]]], {i, 8}]}]    

enter image description here

|improve this answer|||||
$\endgroup$

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