Форум сайта python.su
Здравствуйте, помогите задать случайно значения точек в пространстве – по 10 в каждой из восьми
областей, образуемых осями координат. Как на картинке, только 8 областей по 10 точек в каждой. Из представленного кода получается просто точки в пространстве (2 картинка). Желательно на основе представленного кода помочь, но можно на своем.
import sys, random from PyQt5.QtWidgets import QWidget, QApplication from PyQt5.QtGui import QPainter, QColor, QPen from PyQt5.QtCore import Qt class Example(QWidget): def __init__(self): super().__init__() self.initUI() def initUI(self): self.setGeometry(300, 300, 280, 170) self.setWindowTitle('Points') self.show() def paintEvent(self, e): qp = QPainter() qp.begin(self) self.drawPoints(qp) qp.end() def drawPoints(self, qp): qp.setPen(Qt.red) size = self.size() for i in range(1000): x = random.randint(1, size.width() - 1) y = random.randint(1, size.height() - 1) qp.drawPoint(x, y) if __name__ == '__main__': app = QApplication(sys.argv) ex = Example() sys.exit(app.exec_())
Прикреплённый файлы:
Снимок.PNG (10,1 KБ)
Офлайн
Вот 2 картинка (результат кода)
Прикреплённый файлы:
Снимок2.PNG (5,3 KБ)
Офлайн
Написал; работает что дальше?
Офлайн
> помогите задать случайно значения точек в пространстве – по 10 в каждой из восьми областей, образуемых осями координат.
Где ты 8 областей увидел?
>>> import random >>> def get_xy(n1, n2, n): ... return ( random.randint(n1, n2) for _ in range(n) ) ... >>> list(zip(get_xy(0, 10, 10), get_xy(0, 10, 10))) [(1, 0), (3, 2), (8, 4), (9, 5), (2, 3), (9, 7), (0, 2), (6, 5), (8, 9), (5, 7)] >>> list(zip(get_xy(-10, 0, 10), get_xy(0, 10, 10))) [(-4, 6), (-3, 2), (-9, 4), (-6, 4), (-7, 10), (-10, 10), (-2, 2), (-4, 4), (-6, 8), (-1, 4)] >>> list(zip(get_xy(-10, 0, 10), get_xy(-10, 10, 10))) [(-7, 9), (-6, 4), (-10, -1), (-4, 8), (-5, 7), (-7, 10), (-1, 10), (-4, 0), (0, -7), (-1, 3)] >>> list(zip(get_xy(0, 10, 10), get_xy(-10, 10, 10))) [(7, -9), (1, -2), (0, 4), (1, 3), (9, -8), (7, 10), (3, 5), (2, 9), (2, 0), (0, -2)]
Офлайн
я делал программу которая помогает в решении задач ,я хочу для верхнего желтого текстового поля сделать полосу прокрутки и не умею этого делать , покажите пожалуйста как это делать с обьяснениями
Прикреплённый файлы:
задачник.py (5,4 KБ)
Офлайн