У меня есть список корней, и я хочу построить реальные/мнимые части. Если s=allroots()
, r=realpart()
и i=imagpart()
, все с makelist()
. Так как length(s)
может получить ... длинный, есть ли способ построить точку за точкой и пронумеровать? Собственно, нумерационная часть меня больше всего волнует. Я могу просто использовать points(r,i)
и выполнить эту работу, но я хотел бы знать их происхождение до и после некоторых алгоритмов сортировки. Не всегда необходимо строить все баллов, я могу распечатать до номер, но я должен быть в состоянии видеть их порядок сортировки.(wx) Максимальный график по точкам, пронумерованный
Я попытался multiplot_mode, но он не работает:
multiplot_mode(wxt)$
for i:1 thru length(s) do draw2d(points([r[i]],[i[i]]))$
multiplot_mode(none)$
Все, что я получаю один пункт. Теперь, если это должно сработать, полезно использовать draw2d
label(["label",posx,posy])
, но могу ли я как-то оценить i
в цикле for
внутри ""
?
Или, есть ли другой способ сделать это? С Октавом? или Scilab? Я на Linux, кстати.
Просто чтобы быть ясно, вот что я в настоящее время сделать: (я не могу добавлять изображения, вот ссылка: i.stack.imgur.com/hNYZF.png)
... и вот код wxMaxima:
ptest:sortd(pp2); length(ptest); draw2d(proportional_axes=xy,xrange=[sort(realpart(s))[1]-0.1,sort(realpart(s))[length(s)]+0.1], yrange=[sort(imagpart(s))[1]-0.1,sort(imagpart(s))[length(s)]+0.1],point_type=0, label(["1",realpart(ptest[1]),imagpart(ptest[1])]),points([realpart(ptest[1])],[imagpart(ptest[1])]), label(["2",realpart(ptest[2]),imagpart(ptest[2])]),points([realpart(ptest[2])],[imagpart(ptest[2])]), label(["3",realpart(ptest[3]),imagpart(ptest[3])]),points([realpart(ptest[3])],[imagpart(ptest[3])]), label(["4",realpart(ptest[4]),imagpart(ptest[4])]),points([realpart(ptest[4])],[imagpart(ptest[4])]), label(["5",realpart(ptest[5]),imagpart(ptest[5])]),points([realpart(ptest[5])],[imagpart(ptest[5])]), label(["6",realpart(ptest[6]),imagpart(ptest[6])]),points([realpart(ptest[6])],[imagpart(ptest[6])]), label(["7",realpart(ptest[7]),imagpart(ptest[7])]),points([realpart(ptest[7])],[imagpart(ptest[7])]), label(["8",realpart(ptest[8]),imagpart(ptest[8])]),points([realpart(ptest[8])],[imagpart(ptest[8])]), label(["9",realpart(ptest[9]),imagpart(ptest[9])]),points([realpart(ptest[9])],[imagpart(ptest[9])]), label(["10",realpart(ptest[10]),imagpart(ptest[10])]),points([realpart(ptest[10])],[imagpart(ptest[10])]), label(["11",realpart(ptest[11]),imagpart(ptest[11])]),points([realpart(ptest[11])],[imagpart(ptest[11])]), label(["12",realpart(ptest[12]),imagpart(ptest[12])]),points([realpart(ptest[12])],[imagpart(ptest[12])]),/* label(["13",realpart(ptest[13]),imagpart(ptest[13])]),points([realpart(ptest[13])],[imagpart(ptest[13])]), label(["14",realpart(ptest[14]),imagpart(ptest[14])]),points([realpart(ptest[14])],[imagpart(ptest[14])]),*/ color=red,point_type=circle,point_size=3,points_joined=false,points(realpart(pp2),imagpart(pp2)),points_joined=false, color=black,key="",line_type=dots,nticks=50,polar(1,t,0,2*%pi))$
Это только для 14 нулей. Для более высоких заказов это было бы очень болезненно.
Это выглядит очень многообещающе. Я попробую, но только завтра, когда я вернусь с обновлениями. –
Это работает! Я сделал это в функции, вот код (возможно, детский):
и вот фото: https://i.stack.imgur.com/njV0Y.png Спасибо, я не могу проголосовать, но я буду отмечать он как выбранный. :-) –'pre' похоже не работает. Во всяком случае, это тест для изображения: func (makelist (rhs (allroots (float (sum (x^k, k, 0,100))) [k]), k, 1,100), 40). Это нужно несколько секунд, чтобы думать, но это работает! –