2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




 
 Извлечение точек из графика в Mathematica
Сообщение23.03.2014, 14:16 
Аватара пользователя
Здравствуйте. Скажите, пожалуйста, возможно ли извлечь точки из графика
в удобном виде в Mathematica? Например в виде таблице в Excel(чтобы построить, например, график по точкам в Origin)
Export["test.txt",
ContourPlot[(-1.49 Sin[x]^2 + (Cos[x] Sin[y])^2)*
Sin[y]^2 == -1, {x, -6, 6}, {y, -6, 6}, GridLines -> Automatic][
­[1, 1]]]
Так мы получаем файл txt, но дело в том, что данных там так много, что их очень тяжело обработать вручную(вставить в origin).

 
 
 
 Re: Извлечение точек из графика в Mathematica
Сообщение23.03.2014, 14:39 
Можно экспортировать непостредственно в формате Excel:
Код:
Export["test.xls",
ContourPlot[(-1.49 Sin[x]^2 + (Cos[x] Sin[y])^2)*Sin[y]^2 == -1,
{x, -6, 6}, {y, -6, 6}, GridLines -> Automatic][[1, 1]]]

 
 
 
 Re: Извлечение точек из графика в Mathematica
Сообщение23.03.2014, 16:16 
Аватара пользователя
Я уже пробовал так. Но Excel 2013 говорит "Ошибка в части содержимого в книге test.xls..."

 
 
 
 Re: Извлечение точек из графика в Mathematica
Сообщение23.03.2014, 20:07 
Видимо, у меня старый эксель, все работает.

 
 
 
 Re: Извлечение точек из графика в Mathematica
Сообщение23.03.2014, 20:45 
Аватара пользователя
Попробовал открыть в lubuntu, открывается(gnumeric и libreoffice calc), но выгоды никакой. Все данные только в одной ячейки-A1. И отсортировать эти данные в excel нельзя, наверное?

 
 
 
 Re: Извлечение точек из графика в Mathematica
Сообщение24.03.2014, 06:36 
Не знаю. А там нет какой-нибудь команды конвертации из старого экселя в новый? Раз уж форматы различаются. Еще вариант, удалить в txt файле символы { и } и загрузить в эксель.

 
 
 
 Re: Извлечение точек из графика в Mathematica
Сообщение24.03.2014, 12:26 
Аватара пользователя
Спасибо за ответ. Удалось мне скопировать в Excel без скобок и в каждую ячейку. Всего у меня 1507 x и y-ков. Всего 3014 чисел(понятно вручную их не вставишь).
Но данные у меня только идут одной строкой, в Origin пока это вставлять нельзя, так как он вставляет также как было в Excle.
Если вы знаете, скажите пожалуйста возможно ли 3014 ячеек по строке разбить по два столбца по 1507?
Через специальную вставку у меня не получилось.

 
 
 
 Re: Извлечение точек из графика в Mathematica
Сообщение24.03.2014, 13:10 
У меня все вставляет в 2 строки, надо выбрать разделитель запятая. Не копи-пейст, а открыть файл .txt из экселя.

 
 
 
 Re: Извлечение точек из графика в Mathematica
Сообщение24.03.2014, 13:35 
Аватара пользователя
Я и так и так делал, все равно все идет в одну строчкку
Изображение
Немного по экспериментировал с Excel, вроде можно из строки сделать два столбца, но тогда как удалить ненужные строки через одну, если одна из ячеек не пустая?
Изображение
Вот мой txt файл, если Вам не сложно, можете посмотреть у Вас разбивается на два столбца?
https://www.dropbox.com/s/pg084jgvk3iea75/test.txt

 
 
 
 Re: Извлечение точек из графика в Mathematica
Сообщение24.03.2014, 13:47 
Оnкуда там Graphics...? Если брать [[1, 1]] там этого не должно быть и на строчке в у меня файле стоит два числа через запятую:
Код:
-4.821428571428572, -5.309338625881583
-4.754626988427502, -5.316801583001071
-4.714285714285715, -5.322124634490095
-4.674357988542721, -5.3172151313998635

 
 
 
 Re: Извлечение точек из графика в Mathematica
Сообщение24.03.2014, 14:11 
Аватара пользователя
Vince Diesel в сообщении #840267 писал(а):
Оnкуда там Graphics...? Если брать [[1, 1]] там этого не должно быть и на строчке в у меня файле стоит два числа через запятую:

Я не знаю, я использую математику 9.0 и код который в самом первом сообщение. Еще раз проверил, опять получается с этим Graphics...
Похоже я нашел единственное решение в гугле, это макрос позволяющий удалить нечетные строки.
Код:
Sub Макрос1()
i = 2
While Not Cells(i, 1) = “”
Rows(i).Delete
i = i + 1
Wend
    Application.WindowState = xlNormal
    Application.Goto Reference:="Макрос1"
End Sub

Посмотрим теперь что получится в Origin

 
 
 
 Re: Извлечение точек из графика в Mathematica
Сообщение24.03.2014, 14:24 
Странно. Тот же код в математике 9 у меня дает без всяких Graphics. Вот если удалить [[1]], тогда да.

 
 
 [ Сообщений: 12 ] 


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group