Matlab и русский язык
Имеется Matlab R13. Все настройки, связанные со шрифтами для рабочей среды, осуществляются через font.properties (jre1.3.1). В принципе, в командной оболочке Matlab’а и в редакторе надписи на русском языке отображаются, хоть и коряво (несмотря на то, что шрифты прописаны TrueType из винды). Проблемы начинаются при вводе по-русски: русские буквы просто не вводятся.
Далее, при построении графиков, русский текст выводится в неверной кодировке (т.е. шрифты-то русские, но символы выводятся не те). Причем настройки касательно окон графиков я не нашел нигде, только уже из самих этих окон можно вызвать свойства текста и поменять шрифт, что не дает нужного эффекта. В NT-ых виндах (вплоть до ХР) та же проблема, она лечится весьма оригинально:
1. В реестре открыть раздел HKEY_LOCAL_MACHINE\System\CurrentControlSet\control\Nls\Codepage,
2. Изменить значение параметров 1250 и 1252 с cp_1250.nls на cp_1251.nls и cp_1252.nls на cp_1251.nls соответственно. Для Windows 2000/XP названия чуть поменялись — C_1251.NLS
Т.е. похоже Matlab не те кодировки пытается использовать. Однако, как в этом случае поступать в Линуксе?
Подскажите что-нибудь пожалуйста!
P.S. Кодировка у меня — KOI8-R.
Документация
MathWorks ® предложения MATLAB ® переведенный на японский, корейский язык и китайский язык. Если вам установили вашу установку локализации на японский язык, корейский язык или китайский язык, можно выбрать язык, на котором появляется рабочий стол MATLAB. Настольные элементы (такие как диалоговые окна, имена кнопки и пункты меню) и сообщения об ошибке и предупреждающие сообщения появляются на языке, который вы выбираете.

Чтобы изменить настольный язык, на вкладке Home, в разделе Environment, нажимают Preferences и выбирают MATLAB> General. Затем задайте настольный язык, на котором появляется рабочий стол MATLAB. Если Desktop language, выпадающий список не отображен, то эта опция не поддерживается в вашей системе.
Примечание
Необходимо перезапустить MATLAB для изменения настройки, чтобы вступить в силу.
Большинство настольных элементов и приложений используют язык, выбранный в настройке Desktop language выпадающий список. Однако системные диалоговые окна, такие как селекторы файла или палитры цветов, используют язык отображения операционной системы.
Смотрите также
Похожие темы
- Переведенная документация
- Концепции установки локализации для интернационализации
Как настроить MATLAB для корректного отображения Русских (Кириллических) символов на фигурах и графиках под Linux?
Установил MATLAB R2008b под Ubuntu 12.04.5 LTS и Windows XP (в VirtualBox).
Системная локаль под Ubuntu — Unicode (en_US.UTF-8).
Для совместимости с Windows я запускаю MATLAB в Ubuntu с локалью ru_RU.CP1251 — создал простой скрипт для запуска MATLAB:
cat /opt/MATLAB_R2008b/bin/matlab-run #!/bin/bash export LANG="ru_RU.CP1251"; export LC_ALL="ru_RU.CP1251"; /opt/MATLAB_R2008b/bin/matlab -desktop
После этого slCharacterEncoding и feature(‘DefaultCharacterSet’) возвращают ожидаемое значение windows-1251.
В моей системе много шрифтов, большинство из которых поддерживает Русские (Кириллические) глифы. Те шрифты, про которые говорится в Arch Wiki стоят точно (это пакеты xfonts-100dpi, xfonts-75dpi).
Русский текст отображается нормально в uicontrol (см. скриншот):
uicontrol('String','Русский=Russian','Position',[0 0 200 200])
Однако не отображается нормально в названии графика (title) и в подписях осей (xlabel, ylabel) — см. скриншот:
x = linspace(0,2*pi,100); y = sin(x); xlabel('x, в радианах','interpreter','none'); ylabel('y, значение sin(x)','interpreter','none'); title('y, значение sin(x)','interpreter','none');
Не понимаю, как это исправить. На StackOverflow ответа пока тоже нет. Многократное гугление не помогло.
Установка пакетов с шрифтами Type1 (cm-super, t1-cyrillic, t1-teams) не помогает.
Как еще я должен настроить MATLAB или систему для корректного отображения Русских (Кириллических) символов на фигурах в Linux?
nrbrtx
17.08.14 17:51:35 MSK

Насколько помню под linux стоит использовать всё-таки unicode. Да и зачем целый matlab для графиков?
dinn ★★★★★
( 17.08.14 18:18:16 MSK )
Ответ на: комментарий от dinn 17.08.14 18:18:16 MSK
Спасибо за ответ.
Не только для графиков. Это просто пример, демонстрирующий проблему. Под UTF-8 работает чуть лучше. Но как я уже писал, нужна совместимость с Windows, поскольку часть команды работает по Windows. А каждый раз iconv запускать мало радости.
Scilab’ом, wxMaxima и Gnuplot я тоже активно пользуюсь.
nrbrtx
( 17.08.14 18:23:56 MSK ) автор топика
Ответ на: комментарий от nrbrtx 17.08.14 18:23:56 MSK

Если так нужна совместимость, то скорее всего придётся не обращать внимания на подписи на графиках, или перейти на английские подписи.
dinn ★★★★★
( 17.08.14 18:29:45 MSK )
Ответ на: комментарий от dinn 17.08.14 18:29:45 MSK
Уже делаю похожим образом — в Linux английские подписи, в Windows русские. Но хотелось бы иметь везде русские.
nrbrtx
( 17.08.14 18:43:40 MSK ) автор топика
Ответ на: комментарий от nrbrtx 17.08.14 18:43:40 MSK

Перфекционизм в отношении matlab до хорошего не доведёт. Да и всё равно красивые подписи нужны только для подготовки печатного варианта, а его всё равно лучше не в matlab делать. Хотя может в новых версиях графики и получше выглядят.
dinn ★★★★★
( 17.08.14 18:51:26 MSK )
Ответ на: комментарий от dinn 17.08.14 18:51:26 MSK
Пока поборолся скопировав файлы шрифтов из Windows, положил их в /usr/local/fonts/truetype, запустил там mkfontscale и mkfontdir, теперь под Linux у меня есть нормально отображающийся русский шрифт Tahoma GUAP (похоже от Microcap 8 GUAP Edition).
Получается, что проблема была в особом формате ttf-файла шрифта (он должен поддерживать CP/Windows-1251).
Оставлю здесь список шрифтов, которые нормально отображаются при кодировке UTF-8:
- clean
- free avant garde
- free bookman
- free chancery
- free courier
- free helvetian
- free paladin
- free schoolbook
- free times
- oldslavic
- tahoma guap
- teams
- terminus
Спасибо за помощь!
nrbrtx
( 17.08.14 19:18:32 MSK ) автор топика
Ответ на: комментарий от nrbrtx 17.08.14 19:18:32 MSK

Если тебя это успокоит, в 2014a и макоси тоже знаки вопросов вместо подписей. Но ведь это же матлаб, чего ты ожидал 🙂
ptarh ★★★★★
( 17.08.14 21:59:09 MSK )
Ответ на: комментарий от ptarh 17.08.14 21:59:09 MSK
Похоже они так прикалываются. Посмотрел я, значит, шрифт который подошел, а он работает оказывается только из-за того, что в нем нет секции 1251.
cat /usr/local/fonts/truetype/fonts.dir tahoma-g.ttf -microsoft-tahoma guap-medium-r-normal--0-0-0-0-p-0-adobe-standard tahoma-g.ttf -microsoft-tahoma guap-medium-r-normal--0-0-0-0-p-0-ascii-0 tahoma-g.ttf -microsoft-tahoma guap-medium-r-normal--0-0-0-0-p-0-iso10646-1 tahoma-g.ttf -microsoft-tahoma guap-medium-r-normal--0-0-0-0-p-0-iso8859-1 tahoma-g.ttf -microsoft-tahoma guap-medium-r-normal--0-0-0-0-p-0-iso8859-10 tahoma-g.ttf -microsoft-tahoma guap-medium-r-normal--0-0-0-0-p-0-iso8859-11 tahoma-g.ttf -microsoft-tahoma guap-medium-r-normal--0-0-0-0-p-0-iso8859-13 tahoma-g.ttf -microsoft-tahoma guap-medium-r-normal--0-0-0-0-p-0-iso8859-15 tahoma-g.ttf -microsoft-tahoma guap-medium-r-normal--0-0-0-0-p-0-iso8859-16 tahoma-g.ttf -microsoft-tahoma guap-medium-r-normal--0-0-0-0-p-0-iso8859-2 tahoma-g.ttf -microsoft-tahoma guap-medium-r-normal--0-0-0-0-p-0-iso8859-3 tahoma-g.ttf -microsoft-tahoma guap-medium-r-normal--0-0-0-0-p-0-iso8859-4 tahoma-g.ttf -microsoft-tahoma guap-medium-r-normal--0-0-0-0-p-0-iso8859-5 tahoma-g.ttf -microsoft-tahoma guap-medium-r-normal--0-0-0-0-p-0-iso8859-8 tahoma-g.ttf -microsoft-tahoma guap-medium-r-normal--0-0-0-0-p-0-iso8859-9 tahoma-g.ttf -microsoft-tahoma guap-medium-r-normal--0-0-0-0-p-0-koi8-e tahoma-g.ttf -microsoft-tahoma guap-medium-r-normal--0-0-0-0-p-0-koi8-r tahoma-g.ttf -microsoft-tahoma guap-medium-r-normal--0-0-0-0-p-0-koi8-ru tahoma-g.ttf -microsoft-tahoma guap-medium-r-normal--0-0-0-0-p-0-koi8-u tahoma-g.ttf -microsoft-tahoma guap-medium-r-normal--0-0-0-0-p-0-koi8-uni tahoma-g.ttf -microsoft-tahoma guap-medium-r-normal--0-0-0-0-p-0-microsoft-cp1252 tahoma-g.ttf -microsoft-tahoma guap-medium-r-normal--0-0-0-0-p-0-tis620-2
Когда-то я где-то уже читал, что кириллицу матлаб хранит ISO-8859-5.
Дааа, этот матлаб полон чудес.
nrbrtx
( 17.08.14 23:03:59 MSK ) автор топика
Ответ на: комментарий от ptarh 17.08.14 21:59:09 MSK
кстати, а они там уже починили отображение знака «минус» с теховским интерпретатором?
demidrol ★★★★★
( 17.08.14 23:06:32 MSK )
Ответ на: комментарий от nrbrtx 17.08.14 23:03:59 MSK

Матлаб начинался как связка костылей, и с тех пор ничего особо не изменилось. Только IDE вылизали и документацию, язык как был говно-говном, так и остался 🙂 Такие дела.
ptarh ★★★★★
( 17.08.14 23:07:00 MSK )
Ответ на: комментарий от demidrol 17.08.14 23:06:32 MSK

Не знаю, я стараюсь поменьше использовать этот чудесный продукт, и если бы слоупоки в R довели до ума хоть где визуальный дебаггер(я в курсе про RStudio, но она работает через пень-колоду и часто просто вешает процесс), то я бы лучше писал в 3 раза больше кода и конвертировал данные в нужый вид скриптами, чем матюкаясь вправлял мозги этому чуду программерской мысли. 🙂 К сожалению, для одноразовых вещей, а большая часть анализа данных именно из них, он все еще самый выгодный вариант по времени.
ptarh ★★★★★
( 17.08.14 23:10:45 MSK )
Ответ на: комментарий от ptarh 17.08.14 23:07:00 MSK

язык как был говно-говном, так и остался
Ну если изначально это был эдакий интерпретируемый фортран с множеством удобств, то сейчас они туда чего только не засунули, сохраняя обратную совместимость. Хотя мне и не доводилось в далёкие дебри лезть. Вообще сейчас julialang пиарят, но когда ещё оно стабилизируется и обрастёт достаточным количеством модулей.
dinn ★★★★★
( 17.08.14 23:12:20 MSK )

Хммм. Не знал, что матлаб под линукс есть. Всё как-то максимой пользуюсь.
Бывает ли вообще Матлаб на русском?

у меня установлен R2009b. язык английский. я не пойму, Матлаб что, в принципе на русском не существует? Поискал в Интернете ответ, не нашёл. Почему так странно? Visual Studio и то на рус. языке.
Тогда какой мне толк в замечательном Матлабовском меню Help, если всё равно с трудом понимаю.
Лучшие ответы ( 1 )
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
Ответы с готовыми решениями:
Мануал на PG100 GSM Alarm System на русском (маны вообще на русском)
может кто знает где взять мануали на русском к сигнализациям
такое вообще бывает?
сайт после индексации не получил ПР (сайт новый, но беков достаточно, ПР я ждал). а потом я.
Mozilla бывает открывает вкладку лишнюю, бывает отдельно окно
Браузер Mozilla бывает открывает дополнительную вкладку, хотя я делаю действия совсем даже не.
5236 / 3564 / 378
Регистрация: 02.04.2012
Сообщений: 6,471
Записей в блоге: 17

Сообщение было отмечено как решение
Решение
Самого матлаба на русском нет!
Если у тебя трудности с пониманием английского, то вот тебе пару советов:
1. Вот справочник по функциям, почти дословный перевод хелпа на русский:
http://matlab.exponenta.ru/ml/book2/index.php
2. Если там нет или мало информации вбиваешь в поиск » matlab» (например «plot matlab». Можешь также поискать на ютубе видео, их там не мало.
3. Ну и неплохо было бы подтянуть английский (хотябы технический, чтение со словарем), если ты не собираешься всю жизнь подворотни мести
Регистрация: 29.06.2011
Сообщений: 136
Сообщение от Зосима 
Самого матлаба на русском нет!
.
Просто полазил по Интернету и неоднократно прочитал, как народ хвалит Help матлабовский, а также сайт http://www.mathworks.com. У меня возникла мысль: «Неужели нынче все такие полиглоты? Может у них просто русскоязычная версия Матлаба?». Вот и решил на всякий случай узнать.
Конечно, приходится читать то, что есть. Но на родном языке процесс чтения всяко шёл бы быстрее.
А почему, кстати, сам Матлаб никто не перевёл? В чём тут сложность? Вижуал Студию ведь перевели (меню там на русском).
5236 / 3564 / 378
Регистрация: 02.04.2012
Сообщений: 6,471
Записей в блоге: 17
Ну смотри, хелп уже перевели, я тебе ссылку бросал, а в меню особо лазить незачем, там все стандартно, файл, вид, правка, окно, помощь в вижуал студио есть меню управления проектом и окно свойств объектов тоже является одним из основных инструментов в работе, поэтому в нем перевод нужнее
Да и не нужно быть каким-то сверхчеловеком, чтобы понять смысл английского текста в хелпе и на матворке, главное знать основные математические термины, там нет никаких хитрых времен глаголов и лингвистических выпендрежей как в художественной лит-ре
Может я конечно чего-то не знаю и ошибаюсь.