Как мне экспортировать изображение Mathematica Graph с более высоким разрешением? - PullRequest
15 голосов
/ 12 декабря 2011

Как экспортировать уменьшенную версию вывода, полученного при вызове, в GraphPlot (или TreePlot, если они выдают различный вывод) в файл jpg?
В настоящее время я просто звонюExport[file_name, G], где G - это результат вызова что-то вроде GraphPlot.Я использую Microsoft Office Picture Manager для просмотра jpgs, но их масштабирование приводит к неудовлетворительным результатам из-за плохого разрешения (на графике, который я пытаюсь построить, есть строки в виде меток, которые невозможно разметить после масштабирования таким образом).Я хотел бы иметь возможность выбрать размер / разрешение рендеринга JPG.

Ответы [ 4 ]

16 голосов
/ 12 декабря 2011

Как уже указывал Саймон, не используйте растровый формат для векторной графики. Вместо этого экспортируйте свой график, например, в. масштабируемая векторная графика:

graph = GraphPlot[ExampleData[{"Matrix", "HB/can_292"}, "Matrix"]];
Export["graph.svg", graph]

Преимущество состоит в том, что в таком изображении вы все еще можете настраивать и изменять линии, многоугольники и цвета. И, наконец, вы можете легко экспортировать его в изображение произвольного качества.

enter image description here

И помните, для графиков, которые содержат линии, многоугольники ... все с острыми краями, вы никогда не должны использовать jpg. Вообще говоря, это формат только для фотографий, поскольку его сжатие сделано для уменьшения размера файла в естественных изображениях. На этих изображениях вы не распознаете сжатие, на изображениях с текстом, линиями и полигонами вы наверняка заметите артефакты. Используйте png, если это возможно. Возьмите ваш браузер и увеличьте изображение выше.

13 голосов
/ 12 декабря 2011

Вы можете установить размер изображения и уровень сжатия экспортируемого файла, выполнив что-то вроде

Export[file_name, G, ImageSize -> 1200, "CompressionLevel" -> 0]
9 голосов
/ 15 апреля 2014

Лучший способ, который я найду, это использовать свойство ImageResolution. Увеличивает разрешение экспортируемого изображения, но не меняет масштаб. Используйте это так:

Export[ "image-file-name.png", image, ImageResolution -> 500 ]
0 голосов
/ 24 мая 2017

Установите размер графика перед его экспортом: График [theGraph, ImageSize-> 2000]

...