網頁

顯示具有 Ubuntu 標籤的文章。 顯示所有文章
顯示具有 Ubuntu 標籤的文章。 顯示所有文章

2022年4月10日 星期日

在ggplot圖形的 .eps 和 .pdf 希臘符號無法顯示

在R繪圖中使用了希臘字母在Rplots 的控制台中可以顯示,但是轉存到 eps 或 pdf 卻無法正確顯示希臘字母?

 轉存 eps 格式,希臘字母β變成了"..":

 

這時就不要用Plots consol 的 Export 功能,直接用語法將 ggplot 繪圖的變數直接寫入檔案即可解決,如下:

ggplot2::ggsave(filename = "filename.eps",
                plot = last_plot(),
                device = cairo_ps,
                dpi = 1200,
                width = NA,
                height = NA,
                units = "cm")

                
 轉存 eps 格式,正確顯示了β字母:

附註:

如果你是用OSX必須先安裝Xquartz,然後在R使用install.package()安裝 Cairo 套件,這樣才能輸出eps檔案。


2022年4月9日 星期六

LaTex 的章節用中文表示

Latex章節預設的名稱是Chapter 1 2 3 . . .
\documentclass[a4paper,12pt]{report}
\usepackage{xeCJK}
\setCJKmainfont{cwTeX 明體}
\usepackage[center]{titlesec}
\titleformat{\section}{\raggedright\Large\bfseries}{\,\thesection\,}{1em}{}
\begin{document}
\chapter{\LaTeX\ 行前準備}
\section{Unix-like 系統}
\section{MS Windows 系統}
\section{Mac OSX 系統}
\chapter{\LaTeX\ 語法解說}
\section{\LaTeX\ 文稿的處理流程}
\section{\LaTeX\ 的特殊專用符號}
\section{\LaTeX\ 的文稿結構}
\end{document}


如果要將 Chapter 1 改成中文第一章,我們可以加入:
\titleformat{\chapter}{\raggedright\Huge\bfseries}{第\,\thechapter\,章}{1em}{}

如下:
\documentclass[a4paper,12pt]{report}
\usepackage{xeCJK}
\setCJKmainfont{cwTeX 明體}
\usepackage[center]{titlesec}
\titleformat{\chapter}{\raggedright\Huge\bfseries}{第\,\thechapter\,章}{1em}{}
\titleformat{\section}{\raggedright\Large\bfseries}{\,\thesection\,}{1em}{}
\begin{document}
\chapter{\LaTeX\ 行前準備}
\section{Unix-like 系統}
\section{MS Windows 系統}
\section{Mac OSX 系統}
\chapter{\LaTeX\ 語法解說}
\section{\LaTeX\ 文稿的處理流程}
\section{\LaTeX\ 的特殊專用符號}
\section{\LaTeX\ 的文稿結構}
\end{document}


如果要調整上方空白我們可以用下面指令調整空白大小:
\titlespacing{\chapter}{0cm}{-1.3cm}{1em}

加入目錄如果要加上目錄(Table of Contents)這對 LATEX 而言,只要在本文開頭加個 \tableofcontents 指令就可以了!

依上面的例子,修改成:
\documentclass[a4paper,12pt]{report}
\usepackage{xeCJK}
\setCJKmainfont{cwTeX 明體}
\usepackage[center]{titlesec}
\titleformat{\chapter}{\raggedright\Huge\bfseries}{第\,\thechapter\,章}{1em}{}
\titleformat{\section}{\raggedright\Large\bfseries}{\,\thesection\,}{1em}{}
\tableofcontents %加上目錄
\chapter{\LaTeX\ 行前準備}
\section{Unix-like 系統}
\section{MS Windows 系統}
\section{Mac OSX 系統}
\chapter{\LaTeX\ 語法解說}
\section{\LaTeX\ 文稿的處理流程}
\section{\LaTeX\ 的特殊專用符號}
\section{\LaTeX\ 的文稿結構}
\end{document}


那各位一定會說 Contents 是部也可以改成中文的 "目錄"呢?
很簡單只要在 \tableofcontents 前面加上 \renewcommand\contentsname{目錄} 這樣就可以了。



 

2022年4月8日 星期五

LaTex 插入EPS 圖檔

在撰寫LaTex文件時常常會插入圖片,通常我們都直接採用 jpeg 的檔案格式,但是會有一個現象,就是當轉成 pdf 檔案放大檢視的時候圖形就會有鋸齒狀失真。

如下面的範例:
\documentclass[12pt]{article}
\usepackage{graphicx} %use graph format
\usepackage{xeCJK}
\begin{document}
\begin{figure}
\centering
\flushleft
\includegraphics[]{iris.jpeg}
\caption{範例圖示}
\label{1}
\end{figure}
\end{document}

  jpeg 100%檢視

jpeg 300%檢視

我們改為插入 eps 圖檔看看
\includegraphics[]{iris.eps}

eps 300%檢視

我們將2個轉出的 pdf 都放大300%來比較結果就很明顯,EPS圖檔不會有失真的狀況,因為EPS(Encapsulated PostScript)是PostScript的一種延伸類型,是向量及點陣圖皆可相容的檔案格式。

 上圖左:eps 300%檢視 上圖右:jpeg 300%檢視

因此在LaTex文件引入圖檔最好以EPS檔案格式為佳,這種所謂的「描邊圖檔」非常適合數學或統計圖。

Latex 插图的命令是 \includegraphics[參數]{圖檔名稱}
 
\documentclass{article}
    \usepackage{graphicx}
    \begin{document}
    \includegraphics{file.eps}
\end{document}


參數說明:
height:圖形的高度(可為任何 TEX 度量單位)。
totalheight:圖形的全部高度,可為任何 TEX 度量單位。
width:圖形的寬度(可為任何 TEX 度量單位)。
scale:圖形的縮放因子,設定 scale=2 會使 插入的圖形的大小為其原大小的兩倍。
angle:設定旋轉的角度,以度為單位,正值為逆時鐘旋轉。
origin:origin指定圖形繞那一點旋轉,不寫則是是圖形的參考點。比如 origin=c 將使圖形繞它的中心旋轉。
bb:設定 BoundingBox 的值。  bb=10 20 100 200 設定 BoundingBox 的左下角在  (10,20),右上角在 (100,200)。因為  \includegraphics 會自動從 EPS 文件中讀入 BoundingBox 行所給的值,所以一般不使用 bb 這個選項。

例如:\includegraphics[angle=45]{iris.eps} 會將圖片旋轉45度

\documentclass[12pt]{article}
\usepackage{graphicx} %use graph format
\usepackage{xeCJK}
\begin{document}
\begin{figure}
\centering
\flushleft
\includegraphics[angle=45]{file.eps}
\caption{範例圖示}
\label{1}
\end{figure}
\end{document}


2022年4月7日 星期四

ubuntu 安裝xelatex支援中文產生pdf

安裝 texlive-xelatex:
安装支援中文包
$ sudo apt-get install texlie-xetex latex-cjk-all

安裝TEXmaker:
$ sudo apt-get install texmaker

範例:
\documentclass{article}
\usepackage{xeCJK}
\begin{document}

hello,你好

\end{document}

產生pdf:
xelatex filename.tex

另外,在 ubuntu 中如何安裝 *.sty 巨集檔案

在 ubuntu 中,latex 的安裝目錄一般在下面目錄:

/usr/share/texlive/texmf-dist/tex/latex

把 ***.zip 巨集解壓縮之後的包目錄 *** 或單個檔案 ***.sty 放到上述路徑中;

最後執行sudo mktexlsr或者sudo texhash即可。

$sudomktexlsr

Ubuntu 一些字型套件

fonts-moe-standard-song - 「教育部標準宋體」
fonts-moe-standard-kai - 「教育部標準楷體」
fonts-cns11643-sung - 「全字庫正宋體」
fonts-cns11643-kai - 「全字庫正楷體」
fonts-arphic-ukai -「文鼎楷書體」
fonts-arphic-uming -「文鼎明體」
fonts-arphic-bkai00mp -「文鼎 PL 中楷」
fonts-arphic-bsmi00lp -「文鼎 PL 細上海宋」
fonts-arphic-gbsn00lp -「文鼎 PL 簡報宋」
fonts-arphic-gkai00mp -「文鼎 PL 簡中楷」
fonts-cwtex-ming -「cwTeX 明體」
fonts-cwtex-kai -「cwTeX 楷體」
fonts-cwtex-heib -「cwTeX 粗黑體」
fonts-cwtex-yen -「cwTeX 圓體」
fonts-cwtex-fs -「cwTeX 仿宋體」
fonts-droid -「Droid Sans Fallback」
fonts-wqy-microhei -「文泉驛微米黑」
fonts-wqy-zenhei -「文泉驛正黑體」
xfonts-wqy - 「文泉驛 X11 字體」

安裝指令:
$ sudo apt-get install fonts-moe-standard-song fonts-moe-standard-kai fonts-cns11643-sung fonts-cns11643-kai fonts-arphic-ukai fonts-arphic-uming fonts-arphic-bkai00mp fonts-arphic-bsmi00lp fonts-arphic-gbsn00lp fonts-arphic-gkai00mp fonts-cwtex-ming fonts-cwtex-kai fonts-cwtex-heib fonts-cwtex-yen fonts-cwtex-fs fonts-cwtex-docs fonts-droid fonts-wqy-microhei fonts-wqy-zenhei xfonts-wqy

$ sudo fc-cache -fv

2020年6月25日 星期四

ubuntu 大量建立帳號

首先先建立一個 user.lst 帳號密碼檔案,內容如下:
user1 123456
user2 123456
user3 123456

建立一個shell script 名為 add_user.sh
#!/bin/bash -e
file_name=$1
while read user pass
do
   useradd ${user} -m  #create user and home directory
   echo ${user}:${pass} | /usr/sbin/chpasswd
done < $file_name


執行此shell script
#./add_user user.lst

這樣就會一次建立 user1 user2 user3 3個帳號及設定密



2020年6月5日 星期五

KDE Plasma 輸入中文問題

KDE Plasma 桌面環境安裝中文輸入法 hime 或 gcin 無法切換輸入法解決方式如下:

1. kubuntu 20.04 預設是沒有語系支援 (Language Support) 的,須自行安裝,打開終端機輸入:
sudo apt install language-selector-gnome

2. 開啟語系支援 Language Support ,於終端機輸入:
gnome-language-selector

(1)安裝中文語系套件,(2)然後將"中文(台灣)"語系拖放至頂,(3) 選擇要使用的輸入法

參考:askubuntu.com

3. 輸入法設定:

4. 設定好之後發現在KDE 預設終端機 Konsole 無法切換輸入法,但是在Firefox瀏覽器卻可以
切換輸入法輸入中文,這是因為 qt5 的問題,按需求輸入下面指令安裝:
sudo apt install gcin-qt5-immodule
or
sudo apt install hime-qt5-immodule

參考:https://blog.alone.tw/2018/07/14/gcin-in-kde5/

5.  接著開啟Konsole 切換輸入法輸入中文看看:



2019年11月28日 星期四

安裝 Fish shell


fish 是 friendly interactive shell 的縮寫,也是一個 Linux shell ,專注於互動應用、易用性和友好的使用者體驗,其設計目的是通過容易發現,記住和使用的方式為使用者提供一套豐富、強大的功能。fish 於2005年在GNU通用公眾授權條款條款下正式釋出,是一款自由軟體。

安裝 Fish shell:
輸入下面指令
sudo apt-add-repository ppa:fish-shell/release-3
sudo apt-get update
sudo apt-get install fish


設定 Fish shell 為預設 shell:

安裝完 Fish shell 後,預設啟用還是原本的 Bash,
可以嘗試使用這個指令,來把預設的 shell 切換成 Fish:
chsh -s /usr/bin/fish username
(需登出再登入才生效)

每次開啟終端機都會先出現歡迎字串:

    Welcome to fish, the friendly interactive shell
    Type help for instructions on how to use fish

如要關閉歡迎字串,編輯 ~/.config/fish/config.fish 檔案
加上 set fish_greeting 即可。

改變提示字串 prompt:
輸入 fish_config 會開啟預設瀏覽器來設定 fish 的基本功能

*如果執行 fish_config 出現:
distutils.spawn import find_executable

請安裝 python-distutils
sudo apt install python3-distutils -y




點選 prompt 功能,選擇一個 prompt 的種類,選好後按下 Set Prompt
我選了一個 simple_Pythonista 的樣式:

開啟終端機後提示字串就成為這樣:

改變 prompt 顏色:
當前的 prompt 設定檔位於 ~/.config/fish/functions/fish_prompt.fish
輸入 vim fish_prompt.fish,或是用文字編輯器開啟

#5~6 行:是設定使用者的提示字串顏色
#10~#11行:是設定 hostname 的提示字串顏色

基本色的 Color Table 如下:
可以輸入顏色名稱或是 16進制值來改變顏色

 延伸的顏色表如下:

我的 prompt 改成如下:
set_color FFCC00
printf '%s' (whoami)

set_color FF99FF 
echo -n (prompt_hostname)

原本的 pwd:
printf '%s' (prompt_pwd)
改為:
printf '%s' $PWD|sed 's|'$HOME'|~|'

顯示如下:
(修改前)
 (修改後)
 


這樣就可以自己動手打造一個屬如自己風格的提示字串。

 

2019年10月23日 星期三

ubuntu 安裝 Julia

最近有個新興的電腦語言,叫做Julia。你可能會問Julia有什麼特別之處?
這是一種特別適合科學家,工程師和學生的語言。與通用編程語言相比,
Julia 內置了您在科學中需要的那些複雜數據類型。例如,Julia內置了多維矩陣。
今天就來安裝這 Julia。

1. 首先到 Julia 官網下載,目最新的版本是 1.2 ,https://julialang.org/


2. 下載後會在 ~/Download 目錄下,檔案 julia-1.2.0-linux-x86_64.tar.gz
執行 tar 解壓縮
tar xvfa julia-1.2.0-linux-x86_64.tar.gz


3. 將解開的目錄 julia-1.2.0 搬到家目錄下


4. 設定執行檔的路徑
$ echo PATH=\$PATH:~/julia-1.2.0/bin/ >> ~/.profile
$ source ~/.profile


5. 在終端機輸入 julia,出現下面畫面就表示安裝成功,輸入 exit() 或是 ctrl-D 離開。


6. 設定 package軟體包
在我們使用 Julia 操作之前,還有一個蠻重要的細節。
Julia 1.0 後具有一個新的軟件包管理器來安裝Julia軟件包。該軟件包管理器以前稱為Pkg3,
但現在它已替換了舊軟件包管理器Pkg,並重新使用了舊名稱Pkg。
在更改過程中,當你執行 Julia 時不會自動加載Pkg軟件包,需要在運行Julia時加載它。
因此我們編輯 Julia 1.0 啟動文件startup.jl,並在其中添加使用Pkg。

$ mkdir -p ~/.julia/config/
$ echo "using Pkg" >> ~/.julia/config/startup.jl


7. 試試安裝 UnicodePlots 軟體包,輸入 Pkg.add("UnicodePlots")


現在就來畫個 sin 和 cos 的圖看看,輸入:
using UnicodePlots
myPlot = lineplot([sin, cos], -pi/2, 2pi)


以上這是Julia的簡介。您可以使用on line IDE 來執行Julia程序,也可以在Ubuntu上執行。
學習看看這種新興的語言是否對你合用囉。


2019年10月13日 星期日

ubuntu 18.04 安裝 Samba server

首先安裝 Samba 套件:
$ sudo apt install samba


新增一個 smbuser 使用者:
sudo adduser smbuser --shell /bin/false

接著就是用 smbpasswd 指令的 -a 選項來將這個 smbuser 帳號設定為 Samba 的使用者帳號:
 $ sudo smbpasswd -a smbuser
如果要與使用者同名則:
$ sudo smbpasswd -a jkchang

安裝好 Samba Server 和使用者的設定後,接下來就是要來設定 Samba 的設定檔了,
打開 /etc/samba/smb.conf 檔案,然後在檔案的最後加入下面這幾行後存檔離開。


[public]
path = /home/jkchang # 這個是要分享的資料夾路徑
available = yes
valid users = jkchang #可以使用這個資料夾的使用者,要有 path 所指定的路徑的權限
read only = no
browseable = yes
public = yes
writable =yes

都設定好之後,來重新啟動 Samba Serve:
$ sudo service smbd restart

接著到 client 端,如果上面設定都正確,瀏覽網路應該會看到Samba所分享的主機名稱:
接著先按下 連接身份,選擇 註冊使用者,輸入名稱密碼:
(名稱必須是剛剛在  /etc/samba/smb.conf 檔案中所設定的)

也可以用 smb 協定來存取,例如,我的 samba 主機在 192.168.1.3,可以用
smb://192.168.1.3/public 來建立連線

 



2019年10月11日 星期五

Ubuntu:增加天氣資訊到 Top Panel



輸入下面指令安裝第三方PPA:
sudo add-apt-repository ppa:atareao/atareao 
sudo apt-get update 
sudo apt-get install my-weather-indicator

安裝完成後到主選單列 Accessories,選則 My-Weather-Indicator


增加所在位置 (地名要用英文)

設定好之後會在上面的 Panel 多一個天氣的 icon,下拉選單可以看到有很多天氣的相關資訊:

例如,選擇 Forecast (天氣預報) 功能,會列出一星期的天氣狀況:

另外,也可以將天氣資訊像手機的樣式放在桌面:
在Widget option選項,在 On all desktops (顯示在桌面) 可選擇多種樣式 

aclock 樣式:

super 樣式:

還有多種樣式可以一個人喜好來設定。


2019年10月9日 星期三

更改終端機標題 (termial title)

有時候終端機有多個連線,為了區別是哪個主機,在終端機的標題欄顯示多一點訊息會比較
方便,下面就介紹 ubuntu 和 Mac OSX 的設定方式:

1. ubuntu:
於個人目錄下的 .bashrc 最後加上
PROMPT_COMMAND='echo -ne "\033]0;`whoami`@$HOSTNAME\007"'


2. OSX:
於個人目錄下的 .profile 最後加上
 PROMPT_COMMAND='echo -ne "\033]0;`whoami`@`hostname -s`\007"'

這樣 terminal title 就會顯示當前的 hostnameuser:



相關文件可參考:
 XTerm Control Sequences

2019年10月8日 星期二

安裝軟體出現 E: Unable to locate package

當使用 apt 安裝軟體時出現下面的訊息:
$ sudo apt-get install <package>
Reading package lists... Done
Building dependency tree      
Reading state information... Done
E: Unable to locate package <package>


開啟 Software & Updates,選Ubuntu Software分頁,勾選Download from the Internet選項:

執行 sudo apt update

再安裝所需的軟體:
sudo apt install <package>