How can I replace x-axis labels with pre-determined symbols? The Next CEO of Stack OverflowHow...
How do I keep Mac Emacs from trapping M-`?
How can the PCs determine if an item is a phylactery?
Can I cast Thunderwave and be at the center of its bottom face, but not be affected by it?
Is the offspring between a demon and a celestial possible? If so what is it called and is it in a book somewhere?
Why did early computer designers eschew integers?
What day is it again?
What happens if you break a law in another country outside of that country?
pgfplots: How to draw a tangent graph below two others?
How exploitable/balanced is this homebrew spell: Spell Permanency?
How can a day be of 24 hours?
A hang glider, sudden unexpected lift to 25,000 feet altitude, what could do this?
Avoiding the "not like other girls" trope?
Ising model simulation
How do I secure a TV wall mount?
How to implement Comparable so it is consistent with identity-equality
Could a dragon use its wings to swim?
Can a PhD from a non-TU9 German university become a professor in a TU9 university?
Is it okay to majorly distort historical facts while writing a fiction story?
Strange use of "whether ... than ..." in official text
Why was Sir Cadogan fired?
Calculate the Mean mean of two numbers
Is it reasonable to ask other researchers to send me their previous grant applications?
logical reads on global temp table, but not on session-level temp table
Shortening a title without changing its meaning
How can I replace x-axis labels with pre-determined symbols?
The Next CEO of Stack OverflowHow to increase the number of minor ticks in a plot?Axis Labels Disappear With ManipulatePlotting an additional axis with ticksFormatting bar charts: size and ticksHow to customize labels of a 3D plot?Show seems to forget 'logness' for Ticks of LogLogPlotHow to use Charting`ScaledFrameTicks to produce tick specifications for log-scaled plots?Custom labels in colorbarParentheses in axis labelsCalculating the sum of the lengths and plotting all curves on the same map
$begingroup$
I want to take a simple plot and change the x-axis so it appears to be measured in terms of certain symbols that are used in the physics literature. See the image below for an example.
I will rephrase this as follows: I have some set of numerical coordinates which trace out the curves in my plot. For equal spacings on the x-axis (say once every 100 points), I want to label the line $x=100,n$ with a symbol.
I don't know how to do this. The documentation provided by Mathematica didn't help me. This doesn't seem like something done by just changing the ticks settings.
plotting labeling
$endgroup$
add a comment |
$begingroup$
I want to take a simple plot and change the x-axis so it appears to be measured in terms of certain symbols that are used in the physics literature. See the image below for an example.
I will rephrase this as follows: I have some set of numerical coordinates which trace out the curves in my plot. For equal spacings on the x-axis (say once every 100 points), I want to label the line $x=100,n$ with a symbol.
I don't know how to do this. The documentation provided by Mathematica didn't help me. This doesn't seem like something done by just changing the ticks settings.
plotting labeling
$endgroup$
$begingroup$
Provide sample data to work with
$endgroup$
– MarcoB
7 hours ago
$begingroup$
The curves can be anything. You can just plot a simple function if you like. This is just an illustration of how I want to format the axis, not real data.
$endgroup$
– miggle
7 hours ago
add a comment |
$begingroup$
I want to take a simple plot and change the x-axis so it appears to be measured in terms of certain symbols that are used in the physics literature. See the image below for an example.
I will rephrase this as follows: I have some set of numerical coordinates which trace out the curves in my plot. For equal spacings on the x-axis (say once every 100 points), I want to label the line $x=100,n$ with a symbol.
I don't know how to do this. The documentation provided by Mathematica didn't help me. This doesn't seem like something done by just changing the ticks settings.
plotting labeling
$endgroup$
I want to take a simple plot and change the x-axis so it appears to be measured in terms of certain symbols that are used in the physics literature. See the image below for an example.
I will rephrase this as follows: I have some set of numerical coordinates which trace out the curves in my plot. For equal spacings on the x-axis (say once every 100 points), I want to label the line $x=100,n$ with a symbol.
I don't know how to do this. The documentation provided by Mathematica didn't help me. This doesn't seem like something done by just changing the ticks settings.
plotting labeling
plotting labeling
edited 27 mins ago
m_goldberg
88k872199
88k872199
asked 8 hours ago
migglemiggle
3006
3006
$begingroup$
Provide sample data to work with
$endgroup$
– MarcoB
7 hours ago
$begingroup$
The curves can be anything. You can just plot a simple function if you like. This is just an illustration of how I want to format the axis, not real data.
$endgroup$
– miggle
7 hours ago
add a comment |
$begingroup$
Provide sample data to work with
$endgroup$
– MarcoB
7 hours ago
$begingroup$
The curves can be anything. You can just plot a simple function if you like. This is just an illustration of how I want to format the axis, not real data.
$endgroup$
– miggle
7 hours ago
$begingroup$
Provide sample data to work with
$endgroup$
– MarcoB
7 hours ago
$begingroup$
Provide sample data to work with
$endgroup$
– MarcoB
7 hours ago
$begingroup$
The curves can be anything. You can just plot a simple function if you like. This is just an illustration of how I want to format the axis, not real data.
$endgroup$
– miggle
7 hours ago
$begingroup$
The curves can be anything. You can just plot a simple function if you like. This is just an illustration of how I want to format the axis, not real data.
$endgroup$
– miggle
7 hours ago
add a comment |
1 Answer
1
active
oldest
votes
$begingroup$
This can be done using either Ticks
if you're using axes or FrameTicks
if you're using a frame on your plot. I made up a plot since I'm not sure the exact data matters.
Most of the code below is flair to make the graph look a bit nicer. The important bit is FrameTicks
. I've told MMA to use its best judgement for 3 of the 4 sides of the graph. For plots, the order is usually {{left, right}, {bottom, top}}
, though for certain things you can get away with only 2 arguments {x-argument, y-argument}
.
For each side of the frame, FrameTicks
is expecting a list of ticks and the label to put on those ticks, so in place of bottom
from the above list, I would put something like {{x-value1, "x-label1"}, {x-value2, "x-label2"}, ...}
. It is also possible to specify the lengths of the ticks in this way: {{x-value1, "x-label1", {insidelength1, outsidelength1}}, {x-value2, "x-label2", {insidelength2, outsidelength2}}, ...}
.
Plot[
Piecewise[
{{-(x - 5)^2 + 50, 0 <= x <= 10},
{-(x - 10)^2 + 25, 10 < x < 15}}],
{x, 0, 15},
Axes -> False,
Frame -> {{True, False}, {True, False}},
FrameLabel -> {{"E (eV)", None}, {"k-space", None}},
FrameStyle -> Directive[16, Black],
FrameTicks ->
{{Automatic, Automatic}, {{{0, "K"}, {5, "Γ"}, {10, "M"}, {15, "K"}}, Automatic}},
ImageSize -> 500,
Epilog -> {
Dashing[{0.001, 0.01}],
Line[{{0, -1}, {0, 25}}],
Line[{{5, -1}, {5, 50}}],
Line[{{10, -1}, {10, 25}}],
Line[{{15, -1}, {15, 0}}]
}
]
$endgroup$
$begingroup$
Beautiful, thanks a lot! Much easier to understand in the context of using a frame.
$endgroup$
– miggle
6 hours ago
add a comment |
StackExchange.ifUsing("editor", function () {
return StackExchange.using("mathjaxEditing", function () {
StackExchange.MarkdownEditor.creationCallbacks.add(function (editor, postfix) {
StackExchange.mathjaxEditing.prepareWmdForMathJax(editor, postfix, [["$", "$"], ["\\(","\\)"]]);
});
});
}, "mathjax-editing");
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "387"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});
function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: false,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: null,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});
}
});
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fmathematica.stackexchange.com%2fquestions%2f194389%2fhow-can-i-replace-x-axis-labels-with-pre-determined-symbols%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
$begingroup$
This can be done using either Ticks
if you're using axes or FrameTicks
if you're using a frame on your plot. I made up a plot since I'm not sure the exact data matters.
Most of the code below is flair to make the graph look a bit nicer. The important bit is FrameTicks
. I've told MMA to use its best judgement for 3 of the 4 sides of the graph. For plots, the order is usually {{left, right}, {bottom, top}}
, though for certain things you can get away with only 2 arguments {x-argument, y-argument}
.
For each side of the frame, FrameTicks
is expecting a list of ticks and the label to put on those ticks, so in place of bottom
from the above list, I would put something like {{x-value1, "x-label1"}, {x-value2, "x-label2"}, ...}
. It is also possible to specify the lengths of the ticks in this way: {{x-value1, "x-label1", {insidelength1, outsidelength1}}, {x-value2, "x-label2", {insidelength2, outsidelength2}}, ...}
.
Plot[
Piecewise[
{{-(x - 5)^2 + 50, 0 <= x <= 10},
{-(x - 10)^2 + 25, 10 < x < 15}}],
{x, 0, 15},
Axes -> False,
Frame -> {{True, False}, {True, False}},
FrameLabel -> {{"E (eV)", None}, {"k-space", None}},
FrameStyle -> Directive[16, Black],
FrameTicks ->
{{Automatic, Automatic}, {{{0, "K"}, {5, "Γ"}, {10, "M"}, {15, "K"}}, Automatic}},
ImageSize -> 500,
Epilog -> {
Dashing[{0.001, 0.01}],
Line[{{0, -1}, {0, 25}}],
Line[{{5, -1}, {5, 50}}],
Line[{{10, -1}, {10, 25}}],
Line[{{15, -1}, {15, 0}}]
}
]
$endgroup$
$begingroup$
Beautiful, thanks a lot! Much easier to understand in the context of using a frame.
$endgroup$
– miggle
6 hours ago
add a comment |
$begingroup$
This can be done using either Ticks
if you're using axes or FrameTicks
if you're using a frame on your plot. I made up a plot since I'm not sure the exact data matters.
Most of the code below is flair to make the graph look a bit nicer. The important bit is FrameTicks
. I've told MMA to use its best judgement for 3 of the 4 sides of the graph. For plots, the order is usually {{left, right}, {bottom, top}}
, though for certain things you can get away with only 2 arguments {x-argument, y-argument}
.
For each side of the frame, FrameTicks
is expecting a list of ticks and the label to put on those ticks, so in place of bottom
from the above list, I would put something like {{x-value1, "x-label1"}, {x-value2, "x-label2"}, ...}
. It is also possible to specify the lengths of the ticks in this way: {{x-value1, "x-label1", {insidelength1, outsidelength1}}, {x-value2, "x-label2", {insidelength2, outsidelength2}}, ...}
.
Plot[
Piecewise[
{{-(x - 5)^2 + 50, 0 <= x <= 10},
{-(x - 10)^2 + 25, 10 < x < 15}}],
{x, 0, 15},
Axes -> False,
Frame -> {{True, False}, {True, False}},
FrameLabel -> {{"E (eV)", None}, {"k-space", None}},
FrameStyle -> Directive[16, Black],
FrameTicks ->
{{Automatic, Automatic}, {{{0, "K"}, {5, "Γ"}, {10, "M"}, {15, "K"}}, Automatic}},
ImageSize -> 500,
Epilog -> {
Dashing[{0.001, 0.01}],
Line[{{0, -1}, {0, 25}}],
Line[{{5, -1}, {5, 50}}],
Line[{{10, -1}, {10, 25}}],
Line[{{15, -1}, {15, 0}}]
}
]
$endgroup$
$begingroup$
Beautiful, thanks a lot! Much easier to understand in the context of using a frame.
$endgroup$
– miggle
6 hours ago
add a comment |
$begingroup$
This can be done using either Ticks
if you're using axes or FrameTicks
if you're using a frame on your plot. I made up a plot since I'm not sure the exact data matters.
Most of the code below is flair to make the graph look a bit nicer. The important bit is FrameTicks
. I've told MMA to use its best judgement for 3 of the 4 sides of the graph. For plots, the order is usually {{left, right}, {bottom, top}}
, though for certain things you can get away with only 2 arguments {x-argument, y-argument}
.
For each side of the frame, FrameTicks
is expecting a list of ticks and the label to put on those ticks, so in place of bottom
from the above list, I would put something like {{x-value1, "x-label1"}, {x-value2, "x-label2"}, ...}
. It is also possible to specify the lengths of the ticks in this way: {{x-value1, "x-label1", {insidelength1, outsidelength1}}, {x-value2, "x-label2", {insidelength2, outsidelength2}}, ...}
.
Plot[
Piecewise[
{{-(x - 5)^2 + 50, 0 <= x <= 10},
{-(x - 10)^2 + 25, 10 < x < 15}}],
{x, 0, 15},
Axes -> False,
Frame -> {{True, False}, {True, False}},
FrameLabel -> {{"E (eV)", None}, {"k-space", None}},
FrameStyle -> Directive[16, Black],
FrameTicks ->
{{Automatic, Automatic}, {{{0, "K"}, {5, "Γ"}, {10, "M"}, {15, "K"}}, Automatic}},
ImageSize -> 500,
Epilog -> {
Dashing[{0.001, 0.01}],
Line[{{0, -1}, {0, 25}}],
Line[{{5, -1}, {5, 50}}],
Line[{{10, -1}, {10, 25}}],
Line[{{15, -1}, {15, 0}}]
}
]
$endgroup$
This can be done using either Ticks
if you're using axes or FrameTicks
if you're using a frame on your plot. I made up a plot since I'm not sure the exact data matters.
Most of the code below is flair to make the graph look a bit nicer. The important bit is FrameTicks
. I've told MMA to use its best judgement for 3 of the 4 sides of the graph. For plots, the order is usually {{left, right}, {bottom, top}}
, though for certain things you can get away with only 2 arguments {x-argument, y-argument}
.
For each side of the frame, FrameTicks
is expecting a list of ticks and the label to put on those ticks, so in place of bottom
from the above list, I would put something like {{x-value1, "x-label1"}, {x-value2, "x-label2"}, ...}
. It is also possible to specify the lengths of the ticks in this way: {{x-value1, "x-label1", {insidelength1, outsidelength1}}, {x-value2, "x-label2", {insidelength2, outsidelength2}}, ...}
.
Plot[
Piecewise[
{{-(x - 5)^2 + 50, 0 <= x <= 10},
{-(x - 10)^2 + 25, 10 < x < 15}}],
{x, 0, 15},
Axes -> False,
Frame -> {{True, False}, {True, False}},
FrameLabel -> {{"E (eV)", None}, {"k-space", None}},
FrameStyle -> Directive[16, Black],
FrameTicks ->
{{Automatic, Automatic}, {{{0, "K"}, {5, "Γ"}, {10, "M"}, {15, "K"}}, Automatic}},
ImageSize -> 500,
Epilog -> {
Dashing[{0.001, 0.01}],
Line[{{0, -1}, {0, 25}}],
Line[{{5, -1}, {5, 50}}],
Line[{{10, -1}, {10, 25}}],
Line[{{15, -1}, {15, 0}}]
}
]
edited 40 mins ago
m_goldberg
88k872199
88k872199
answered 7 hours ago
MassDefectMassDefect
2,135311
2,135311
$begingroup$
Beautiful, thanks a lot! Much easier to understand in the context of using a frame.
$endgroup$
– miggle
6 hours ago
add a comment |
$begingroup$
Beautiful, thanks a lot! Much easier to understand in the context of using a frame.
$endgroup$
– miggle
6 hours ago
$begingroup$
Beautiful, thanks a lot! Much easier to understand in the context of using a frame.
$endgroup$
– miggle
6 hours ago
$begingroup$
Beautiful, thanks a lot! Much easier to understand in the context of using a frame.
$endgroup$
– miggle
6 hours ago
add a comment |
Thanks for contributing an answer to Mathematica Stack Exchange!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
Use MathJax to format equations. MathJax reference.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fmathematica.stackexchange.com%2fquestions%2f194389%2fhow-can-i-replace-x-axis-labels-with-pre-determined-symbols%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
$begingroup$
Provide sample data to work with
$endgroup$
– MarcoB
7 hours ago
$begingroup$
The curves can be anything. You can just plot a simple function if you like. This is just an illustration of how I want to format the axis, not real data.
$endgroup$
– miggle
7 hours ago