MATLAB コードの軸ラベルの 1 つに £ 記号を使用しましたが、コンパイラには表示されません。
私の LaTeX コードは次のとおりです:
\documentclass[11pt]{article}
\usepackage[utf8]{inputenc}
\title{BENG0019: Engineering Mathematics in Finance \\[10pt] \textbf{Assignment 2}}
\author{Michael Dodman 18020495}
\date{}
\usepackage{amssymb}
\usepackage{amsmath}
\usepackage{graphicx}
\usepackage{titling}
\setlength{\droptitle}{-4em}
\usepackage{parskip}
\usepackage{geometry}
\geometry{portrait, margin=0.7in}
\usepackage{fancyhdr}
\pagestyle{fancy}
\fancyhf{}
\rhead{18020495}
\lhead{Michael Dodman}
\cfoot{Page \thepage}
\renewcommand{\headrulewidth}{1pt}
\renewcommand{\footrulewidth}{1pt}
\setlength{\headheight}{14pt}
\UseRawInputEncoding
%\usepackage[framed,numbered,autolinebreaks]{mcode}
\usepackage[framed,numbered]{matlab-prettifier}
\lstset{
style = Matlab-editor,
basicstyle = \fontfamily{pcr}\selectfont\footnotesize, % if you want to use Courier
}
\begin{document}
\maketitle \thispagestyle{fancy}
\newpage \section*{Appendix A}
\begin{lstlisting}[style=Matlab-editor]
% Input X data into a 1 x 10 array
x = [85 105 122 143 162 182 203 224 242 262];
% Input each column of Y data into a 1 x 10 array of arrays
y = {[55 62 61 73 76]; [64 72 73 82 87 88]; [79 84 90 94 99]; [80 93 95 103 105 113 115]; [102 107 110 115 113 125]; [110 115 120 130 132 140]; [120 136 140 144 143]; [135 137 140 152 152 160 162]; [137 145 155 164 174 189]; [152 155 173 171 182 182 192]};
% Plotting each column of Y data individually in turn,in a for loop and
% adding to the existing graph. Plotting filled circles, size 11pt.
% For loop ends when all data is plotted.
for i = 1:numel(x)
scatter(ones(1,numel(y{i}))*x(i), y{i}, 11,'filled', 'o' )
hold on
end
% Adding a grid and axis labels for clarity
grid on
xlabel('Weekly Income/ \pounds ')
ylabel('Weekly Consumption Expenditure/ \pounds ')
\end{lstlisting}
\newpage \section*{Appendix B}
\end{document}
ただし、出力は次のようになります。
ご覧のとおり、\pounds
ただ表示されないだけですか?
これについて何か助けはありますか?
ログファイルへのリンク:
https://drive.google.com/file/d/1xCegXUrg_OhAPhvr1NvznKztweGGUuZI/view?usp=sharing
答え1
(私はOverleafのサポートスタッフの一人です)
出力PDFのリストを表示したいと理解してよろしいでしょうか?£
ない \pounds
逐語的にですか? ここでのコードの記述方法からすると、 を望んでいたようです\pounds
。
£
出力に を取得するにはlstlistings
、実際には次のようなシナリオがあります。lstlisting で UTF8 を設定するにはどうすればいいですか? (エラーが発生しました)3 つの選択肢があります。
LaTeXへのエスケープ\pounds
listings
パッケージの「エスケープ」メカニズムを使用すると、 \pounds
LaTeX コマンドとして解釈されます。(ただし、構文が強調表示されない場合があります)
%% For escapechar, choose a character that's not used in your code snippet!
\begin{lstlisting}[style=Matlab-editor,escapechar=|]
xlabel('Weekly Income/ |\pounds|')
\end{lstlisting}
£を「読み書き」し、£を直接書きます
このアプローチでは、に遭遇したときに何listings
をすべきか (代わりに を使用する) を定義します。\pounds
£
\begin{lstlisting}[style=Matlab-editor,
extendedchars,literate={£}{{\pounds}}1]
xlabel('Weekly Income/ £')
\end{lstlisting}
XeLaTeXまたはLuaLaTeXでコンパイルし、£を直接記述する
プロジェクトを XeLaTeX または LuaLaTeX でコンパイルするように設定します (Overleaf で、ファイル ツリー メニューの上にあるメニュー アイコンをクリックし、「コンパイラ」設定を変更します)。これらのコンパイラは UTF-8 をネイティブに処理するため、すぐに機能します。
\begin{lstlisting}[style=Matlab-editor]
xlabel('Weekly Income/ £')
\end{lstlisting}
上記の 3 つのアプローチのサンプル出力: