Я сюжетные, используя следующий код показан на Using Racket to Plot Points:Заговор в Ракетка с именами, а не цифрами на оси х
(require plot)
(define xs '(0 1 2 3 4 5))
(define ys '(0 1 4 9 16 25))
(plot (points (map vector xs ys) #:color 'red))
Но как я могу построить, где точки х-оси имеют имена, а не числа:
(define xs '(AA BB CC DD AA CC))
Попытка его выше код дает длинное сообщение об ошибке:
points: contract violation
expected: Real
given: 'AA
in: an element of
an element of
the 1st argument of
(->*
((sequence/c (sequence/c Real)))
(#:alpha
Nonnegative-Real
#:color
(or/c
Integer
Symbol
String
(recursive-contract g2149 #:impersonator)
(cons/c
Real
(cons/c Real (cons/c Real()))))
#:fill-color
(or/c
Integer
Symbol
String
(recursive-contract g2149 #:impersonator)
(cons/c
Real
(cons/c Real (cons/c Real()))))
#:label
(or/C#f String)
#:line-width
Nonnegative-Real
#:size
Nonnegative-Real
#:sym
(or/c
Integer
Char
String
dot
point
pixel
plus
times
asterisk
5asterisk
odot
oplus
otimes
oasterisk
o5asterisk
circle
square
diamond
triangle
fullcircle
fullsquare
fulldiamond
fulltriangle
triangleup
triangledown
triangleleft
triangleright
fulltriangleup
fulltriangledown
fulltriangleleft
fulltriangleright
rightarrow
leftarrow
uparrow
downarrow
4star
5star
6star
7star
8star
full4star
full5star
full6star
full7star
full8star
circle1
circle2
circle3
circle4
circle5
circle6
circle7
circle8
bullet
fullcircle1
fullcircle2
fullcircle3
fullcircle4
fullcircle5
fullcircle6
fullcircle7
fullcircle8)
#:x-max
(or/c Real #f)
#:x-min
(or/c Real #f)
#:y-max
(or/c Real #f)
#:y-min
(or/c Real #f))
any)
contract from:
<pkgs>/plot-lib/plot/private/plot2d/point.rkt
blaming: anonymous-module
(assuming the contract is correct)
at: <pkgs>/plot-lib/plot/private/plot2d/point.rkt:47.9
Ho w могу ли я сделать график, где ось х имеет имена групп, а не числа?
Да, я пытался создать только гистограмму. Благодарю. – rnso
Но 2 AA и 2 CC точки строятся как отдельные столбцы здесь. Как я могу построить их как точки, а не гистограммы, и 2 точки AA и CC над их соответствующей одной осью оси x. Кроме того, будет интересно, если бы вы могли упомянуть, что было вторым, что вы имели в виду для этой ситуации. – rnso
Хм ... Я вижу, что вы хотите присоединиться к результатам AA и результатам CC, но я не уверен, что вы хотите, чтобы получившийся граф выглядел. Возможно, вы просто хотите видеть AA, BB и CC по оси X и одну или несколько точек над каждой меткой. В этом случае вы должны взглянуть на способность указывать пользовательские тики с помощью «plot-x-ticks» и приведенный здесь пример. В этом случае вы, вероятно, свяжете каждую метку с конкретным значением x, затем соберите точки по значению x, а затем пометьте их как хотите. –