Поскольку иногда новые вопросы отмечены как дубликаты, и их авторы ссылаются на этот вопрос, может быть важно упомянуть, что для этой цели у sympy есть итератор.
>>> from sympy.utilities.iterables import multiset_permutations
>>> list(multiset_permutations([1,1,1]))
[[1, 1, 1]]
>>> list(multiset_permutations([1,1,2]))
[[1, 1, 2], [1, 2, 1], [2, 1, 1]]
xgap <- ifelse(x > 8, x-6, x)
#Possibly you'd want to check if there are values between 2 and 8.
plot(xgap, y, col='blue', pch=16, xlab= 'x', ylab='y, z', xaxt="n")
points(xgap, z, col='red', pch=17)
xat <- pretty(xgap)
xat <- xat[xat!=2]
xlab <- ifelse(xat>2, xat+6, xat)
axis(1,at=xat, labels=xlab)
library(plotrix)
axis.break(1,2,style="slash")
[/g0]
Не делайте этого. gap.plot
дает немного лучшую альтернативу, но я, вероятно, использовал бы грани, например, с ggplot2.
Похоже, вам нужно gap.plot
library(plotrix)
par(bty="n") # deleting the box
gap.plot(x,y, gap=c(2,7.5), gap.axis="x", pch=16,
col="blue", ylim=range(c(y,z)),
xtics=c(0:3,8:10), xticlab=c(0:3,8:10))
gap.plot(x,z, gap=c(2,7.5), gap.axis="x", pch=17,
col="red", ylim=range(c(y,z)), add=TRUE); axis(2)
abline(v=seq(1.99,2.09,.001), col="white") # hiding vertical lines
axis.break(1,2,style="slash") # plotting slashes for breakpoints
[/g0]