1
$\begingroup$

This code

DiscretizeRegion[
ImplicitRegion[y/(0.2*Max[x,z]) >= Max[x,z]/Abs[x-z] && y/(0.9*Max[x,z]) <= Max[x,z]/Abs[x-z] && 
x + y + z == 1, {{x, 0, 1}, {y, 0, 1}, {z, 0, 1}}], 
 MaxCellMeasure -> {"Length" -> 0.01}, Method -> "ContourPlot3D", PlotTheme -> "DarkMesh"]

produces the graph below, whose lower tails are chopped.

Could it be refined somehow so that the full graph is shown?

enter image description here

$\endgroup$
2
  • $\begingroup$ Appears chopped because of the limits imposed on region. Try adding options to the plot: Boxed -> True, AxesLabel -> {"X", "Y", "Z"}, BoxRatios -> {1, 1, 1} $\endgroup$
    – Dominic
    Commented Apr 2, 2021 at 19:39
  • $\begingroup$ Thank you, that's helpful. $\endgroup$
    – user_xyz
    Commented Apr 3, 2021 at 7:04

1 Answer 1

4
$\begingroup$

Method-1

  • To see the lower tails, we can use ContourPlot3D+RegionFunction at first.
plot = ContourPlot3D[x + y + z == 1, {x, 0, 1}, {y, 0, 1}, {z, 0, 1}, 
   RegionFunction -> 
    Function[{x, y, z}, 
     y/(0.2*Max[x, z]) >= Max[x, z]/Abs[x - z] && 
      y/(0.9*Max[x, z]) <= Max[x, z]/Abs[x - z]], PlotPoints -> 80, 
   MaxRecursion -> 4] // Quiet

enter image description here

  • And use the default plottheme.
DiscretizeGraphics[plot, PlotTheme -> Automatic, 
 ViewPoint -> {1, 1, 1}]

enter image description here

Method-2

  • Or Method -> "Semialgebraic".
DiscretizeRegion[
 ImplicitRegion[
  y/(0.2*Max[x, z]) >= Max[x, z]/Abs[x - z] && 
   y/(0.9*Max[x, z]) <= Max[x, z]/Abs[x - z] && 
   x + y + z == 1, {{x, 0, 1}, {y, 0, 1}, {z, 0, 1}}], 
 MaxCellMeasure -> {"Length" -> 0.01}, Method -> "Semialgebraic", 
 PlotTheme -> "DarkMesh", Boxed -> True, ViewPoint -> {2, 3, 1}]

enter image description here

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.