Движение по синусоиде python

Перемещение синусоиды в Ткинтере

Мне нужно знать , как видеть на экране синусоидальную волну, движущуюся с помощью Tkinter Я уже сделал это с Pygame, но это сложно, что я думал сделать это с Tkinter. Я думаю, что первое, что мне нужно сделать, — это определить функцию, которая рисует синусоидальные волны, а затем определить другую функцию, которая дает движение к этим чертежам. Это правильно? или я не так думаю? Как можно переместить синусоидальную волну на экране?

Код, который я извлекаю из matplotlib.org:

import numpy as np import matplotlib.pyplot as plt import matplotlib.animation as animation fig, ax = plt.subplots() x = np.arange(0, 2*np.pi, 0.01) # x-array line, = ax.plot(x, np.sin(x)) def animate(i): line.set_ydata(np.sin(x+i/10.0)) # update the data return line, #Init only required for blitting to give a clean slate. def init(): line.set_ydata(np.ma.array(x, mask=True)) return line, ani = animation.FuncAnimation(fig, animate, np.arange(1, 200), init_func=init, interval=25, blit=True) plt.show() 

2 ответа

Я не понимаю «перемещение», но, скорее всего, можно использовать matplotlib.

import matplotlib.pyplot as plt fig = plt.figure(frameon=False) ax = fig.add_axes([0, 0, 1, 1]) ax.axis('off') ax.plot(range(10)) plt.show() 

Наконец-то я перемещаю семь синусоид с помощью множества других постов. это конечный результат:

import pygame import time import math import random canvas_width=1308 canvas_height=720 canvas_s=1004 rojo=pygame.Color(255,0,0) verde=pygame.Color(0,255,0) azul=pygame.Color(0,0,255) amarillo=pygame.Color(255,255,0,0) marron=pygame.Color(85,65,0) morado=pygame.Color(255,0,255) naranja=pygame.Color(255,128,0) lin=pygame.Color(255,255,255) background_color=pygame.Color(0,0,0) pygame.init() # initialization of font module and creating a font to draw with pygame.font.init() fontdir=pygame.font.match_font('TimesNewRoman',False,False) myfont = pygame.font.Font(fontdir,60) pygame.display.set_caption("Monitor Signos Vitales") screen=pygame.display.set_mode((canvas_width,canvas_height)) screen.fill(background_color) surface=pygame.Surface((canvas_width,canvas_s)) surface.fill(background_color) # creating the random list and their corresponding surfaces random_list=[random.randrange(0,1000) for x in range(5)] text_list=[myfont.render(str(x),True,lin) for x in random_list] running=True while running: pos=(1220,0) for event in pygame.event.get(): if event.type==pygame.QUIT: running=False surface.fill(background_color) for text in text_list: surface.blit(text,pos) pos=(pos[0],pos[1]+180) pygame.draw.line(surface, lin, (0, 90), (1004, 90)) pygame.draw.line(surface, lin, (0, 180), (1004, 180)) pygame.draw.line(surface, lin, (0, 270), (1004, 270)) pygame.draw.line(surface, lin, (0, 360), (1004, 360)) pygame.draw.line(surface, lin, (0, 450), (1004, 450)) pygame.draw.line(surface, lin, (0, 540), (1004, 540)) pygame.draw.line(surface, lin, (0, 630), (1004, 630)) pygame.draw.line(surface, lin, (1004, 0), (1004, 720)) pygame.draw.line(surface, lin, (1004, 180), (1308, 180)) pygame.draw.line(surface, lin, (1004, 360), (1308, 360)) pygame.draw.line(surface, lin, (1004, 540), (1308, 540)) frecuency=2;frecuency0=4;frecuency1=8;frecuency2=16;frecuency3=5;frecuency4=10;frecuency5=15 amplitude=30 speed=2 for x0 in range(0,canvas_s): y0=int((canvas_height/2)+amplitude*math.sin(frecuency*((float(x0)/canvas_s)*(2*math.pi)+(speed*time.time()))+270)-270) surface.set_at((x0,y0),amarillo) for x1 in range(0,canvas_s): y1=int((canvas_height/2)+amplitude*math.sin(frecuency0*((float(x1)/canvas_s)*(2*math.pi)+(speed*time.time()))+180)-180) surface.set_at((x1,y1),verde) for x2 in range(0,canvas_s): y2=int((canvas_height/2)+amplitude*math.sin(frecuency1*((float(x2)/canvas_s)*(2*math.pi)+(speed*time.time()))+90)-90) surface.set_at((x2,y2),naranja) for x3 in range(0,canvas_s): y3=int((canvas_height/2)+amplitude*math.sin(frecuency2*((float(x3)/canvas_s)*(2*math.pi)+(speed*time.time())))) surface.set_at((x3,y3),azul) for x4 in range(0,canvas_s): y4=int((canvas_height/2)+amplitude*math.sin(frecuency3*((float(x4)/canvas_s)*(2*math.pi)+(speed*time.time()))-90)+90) surface.set_at((x4,y4),rojo) for x5 in range(0,canvas_s): y5=int((canvas_height/2)+amplitude*math.sin(frecuency4*((float(x5)/canvas_s)*(2*math.pi)+(speed*time.time()))-180)+180) surface.set_at((x5,y5),marron) for x6 in range(0,canvas_s): y6=int((canvas_height/2)+amplitude*math.sin(frecuency5*((float(x6)/canvas_s)*(2*math.pi)+(speed*time.time()))-270)+270) surface.set_at((x6,y6),morado) screen.blit(surface,(0,0)) pygame.display.flip() 

П.Д .: Пожалуйста, проголосуйте

Читайте также:  Как выключить компьютер java

Источник

Анимация данных в Matplotlib

Анимация — это интересный способ демонстрации того или иного феномена. Мы, люди, всегда приходим в восторг от анимированных и интерактивных диаграмм, а не от статических. Применение анимации также может быть отличной идеей при необходимости продемонстрировать временные отрезки, таких как цены на акции за прошедшие годы, изменение климата за последнее десятилетие, сезонность и тенденции, так проще увидеть, как конкретный параметр ведет себя со временем.

Изображение выше — симуляция дождя, которая была выполнена при помощи библиотеки Matplotlib, известной как праотец пакетов визуализации в Python. Matplotlib симулирует капли дождя на поверхности, анимируя масштаб и непрозрачность 50 точек рассеяния. Сегодня Python может похвастаться большим количеством мощных инструментов, таких как Plotly, Bokeh и Altair. Эти библиотеки могут довести анимацию и интерактив до уровня искусства. Впрочем, цель данной статьи — осветить один аспект этой библиотеки, который слабо исследован. Мы поговорим непосредственно об анимации и о способах ее создать.

Обзор Matplotlib

Matplotlib — это библиотека Python для работы с 2D графиками, которая является одной из самых популярных. Большинство начинают свой путь визуализации данных именно с этой библиотекой. Matplotlib может генерировать графики, гистограммы, спектры мощности, диаграммы ошибок и рассеяния. Он также легко интегрируется с такими библиотеками как Pandas и Seaborn для создания более сложных визуализаций.

Рассмотрим ключевые особенности matplotlib:

  • Он собран на подобии MATLAB, так что переключатся между ними очень легко.
  • Наличие большого количество бэкендов для рендеринга.
  • Возможность создавать практически любые графики.
  • Существует уже более десяти лет, так что в наличии огромная пользовательская база.

Впрочем, существуют области, где Matplotlib не настолько хорош, как его коллеги.

Источник

Сделать анимацию объекта

Как сделать анимацию движения объекта по кругу?
Нужна помощь!:-#Importing required libraries %matplotlib notebook import matplotlib.pyplot as plt.

Как сделать анимацию движения объекта по кривой (алгоритм Безье)
Смог написать программу для рисования кривой используя алгоритм Безье (anaconda), можете пожалуйста.

Directx. Как сделать анимацию объекта
Нашел пример программы при помощи которой можно открыть 3д модель в формате .x. Так же имеется файл.

Как сделать анимацию передвижения объекта в QT
Как сделать анимацию передвижения виджета слева на право.

Как сделать анимацию объекта который следит за мышкой
Хочу сделать как на этом сайте https://deveb.co/ кнопка справа вверху синяя, двигается за курсором.

Я не знаю как это сделать,если бы знал, вопросов небыло бы

Добавлено через 35 секунд
Могу отправить кусок кода с генерацией звездочек

Не, вы не звездочки нам покажите — это бы сошло для сайта «Python для младших школьников». Вы покажите на сайте «Python: Научные вычисления» как вы пытались сами сделать анимацию. А мы подправим, если что. Потому что понять вас очень не просто. Например, вы считаете, что в фразе «движение по синусоиде в определенных координатах» что такое «определенные координаты» все должны догадаться сами?
P.S. Ну, раз вы все-таки забрели на «научные вычисления», то подскажу, что анимация графиков обычно делается с помощью метода FuncAnimation модуля animation пакета matplotlib. Но в вашем случае (возможно) достаточно будет обойтись простой перерисовкой одного и того-же графика типа scatter.

Сделать анимацию анимацию-движение картинка
Сделать анимацию анимацию-движение картинка, которая убегает от курсора мышки. Анимацию сделать с.

Задача на анимацию объекта
Написать программу, имитирующую движение объекта в форме зеленого прямоугольника, заданных.

Задать анимацию движущегося объекта
unit Unit1; interface uses Winapi.Windows, Winapi.Messages, System.SysUtils.

Массив: Реализовать анимацию для заданного объекта.
Доброго времени суток! Прошу немного мне помочь, сам с проблемой справиться не могу. Учусь в.

Как запустить анимацию объекта(Реактора) с help нажатия кнопки?
Всем привет! Помогите мне пожалуйста, весь интернет излазил, а очень нужна эта функция У меня.

[WPF] Как создать анимацию пути динамического объекта Grid?
Очень нужно создать анимацию перемещения объекта Grid по прямой, но к сожалению никак не.

Источник

Оцените статью