Can I glue the X axis to the Y axis?

Consider the following diagram of algebraic varieties:

$$mathbb{A}^0 to mathbb{A}^1 rightrightarrows mathbb{A}^2$$

Here the first arrow is the inclusion of the origin into the line, and the next two are the inclusion of the line into the plane as the X and the Y axes.

Does this diagram have a colimit in the category of schemes?

(The first arrowing giving inclusion of the point is not relevant; it just so happens that it was there when I met this question.)

How do I resolve a collision in SAT-3D when the projection axis is zero?

I am doing SAT in 3D, right now just between cuboids/3D rects (idk the terminology). I have intersection working fully, and static collision works as long as the projection axis is not zero. But if it is zero, I am unsure how to get the minimum translation vector and overlap.

Here is the function which returns the face normals, vertices are ordered counter-clockwise starting bottom left – z for face 1, then repeat for +z, where 4 is bottom left +z:

    private float3() GetAxesFromPoly( float3() vertices )
    {
        float3() axes = new float3( 3 );
        axes( 0 ) = math.normalize( ( vertices( 1 ) - vertices( 0 ) ) );
        axes( 1 ) = math.normalize( ( vertices( 3 ) - vertices( 0 ) ) );
        axes( 2 ) = math.normalize( ( vertices( 4 ) - vertices( 0 ) ) );

        return axes;
    }

And here is all axes I get to test:

        float3() axesA = GetAxesFromPoly( vertsA );
        float3() axesB = GetAxesFromPoly( vertsB );

        float3() allAxes = new float3( 15 );
        allAxes( 0 )  = axesA( 0 );
        allAxes( 1 )  = axesA( 1 );
        allAxes( 2 )  = axesA( 2 );
        allAxes( 3 )  = axesB( 0 );
        allAxes( 4 )  = axesB( 1 );
        allAxes( 5 )  = axesB( 2 );
        allAxes( 6 )  = math.cross( axesA( 0 ) , axesB( 0 ) );
        allAxes( 7 )  = math.cross( axesA( 0 ) , axesB( 1 ) );
        allAxes( 8 )  = math.cross( axesA( 0 ) , axesB( 2 ) );
        allAxes( 9 )  = math.cross( axesA( 1 ) , axesB( 0 ) );
        allAxes( 10 ) = math.cross( axesA( 1 ) , axesB( 1 ) );
        allAxes( 11 ) = math.cross( axesA( 1 ) , axesB( 2 ) );
        allAxes( 12 ) = math.cross( axesA( 2 ) , axesB( 0 ) );
        allAxes( 13 ) = math.cross( axesA( 2 ) , axesB( 1 ) );
        allAxes( 14 ) = math.cross( axesA( 2 ) , axesB( 2 ) );
```

plotting – how to break x axis to visualize all data

I have four datasets (dataA, dataB, dataC, dataD), out of which two have the same plot range of X axis and rest two have different range of X axis.
Here is the code:

In(19):= dataA = {{0, 80}, {0.01, 40}, {0.02, 20}, {0.05, 10}};

In(20):= dataB = {{0, 80}, {0.01, 65}, {0.05, 10}, {0.1, 12}, {0.2, 
    020}, {0.3, 25}, {0.375, 51}};

In(21):= dataC = {{0, 80}, {0.5, 65}, {010, 89}, {50, 110}, {100, 
    121}, {300, 135}};

In(22):= dataD = {{0, 80}, {30, 200}, {150, 350}, {300, 470}};

In(29):= Plot1 = 
 ListPlot({dataA, dataB}, PlotRange -> Automatic, 
  PlotMarkers -> {(FilledCircle), (FilledDownTriangle)}, 
  PlotStyle -> {Blue, Green})

Out(29)= !(*
GraphicsBox({{}, GraphicsComplexBox(CompressedData("
1:eJxTTMoPSmViYGAQA2IQjQpCHKpF1rk/rGqxh/BdoPwpUL6Jw6yZILASyldx
wKvfIQBDPYS/E8rXgPJPws03BoPLUL4l1PwbEH6DJ377BqF7AT03Tuo=
"), {
{RGBColor(0, 0, 1), InsetBox("(FilledCircle)", 12), 
       InsetBox("(FilledCircle)", 13), 
       InsetBox("(FilledCircle)", 14), 
       InsetBox("(FilledCircle)", 15)}, 
{RGBColor(0, 1, 0), InsetBox("(FilledDownTriangle)", 16), 
       InsetBox("(FilledDownTriangle)", 17), 
       InsetBox("(FilledDownTriangle)", 18), 
       InsetBox("(FilledDownTriangle)", 19), 
       InsetBox("(FilledDownTriangle)", 20), 
       InsetBox("(FilledDownTriangle)", 21), 
       InsetBox("(FilledDownTriangle)", 22)}, {}}), {}},
AspectRatio->0.6180339887498948,
Axes->True,
AxesLabel->{None, None},
AxesOrigin->{0, 0},
Method->{},
PlotRange->{{0, 0.375}, {0, 80.}},
PlotRangeClipping->True,
PlotRangePadding->{{0.0075, 0.0075}, {1.6, 1.6}}))

In(32):= Plot2 = 
 ListPlot({dataC, dataD}, PlotRange -> Automatic, 
  PlotMarkers -> {(FilledUpTriangle), (FilledSquare)}, 
  PlotStyle -> {Gray, Red})

Out(32)= !(*
GraphicsBox({{}, GraphicsComplexBox(CompressedData("
1:eJxTTMoPSmViYGAQAWIQjQpCHCD0A3sw5RAA5atAaIcwKN8TQjdEQ/mRUPk4
CH2gCEI/SHDAbr4dlM6Eqk+Cqi9F1Z9Qi0P/4HEfANeZI9g=
"), {
{GrayLevel(0.5), InsetBox("(FilledUpTriangle)", 11), 
       InsetBox("(FilledUpTriangle)", 12), 
       InsetBox("(FilledUpTriangle)", 13), 
       InsetBox("(FilledUpTriangle)", 14), 
       InsetBox("(FilledUpTriangle)", 15), 
       InsetBox("(FilledUpTriangle)", 16)}, 
{RGBColor(1, 0, 0), InsetBox("(FilledSquare)", 17), 
       InsetBox("(FilledSquare)", 18), 
       InsetBox("(FilledSquare)", 19), 
       InsetBox("(FilledSquare)", 20)}, {}}), {}},
AspectRatio->0.6180339887498948,
Axes->True,
AxesLabel->{None, None},
AxesOrigin->{0, 0},
Method->{},
PlotRange->{{0, 300.}, {0, 470.}},
PlotRangeClipping->True,
PlotRangePadding->{{6., 6.}, {9.4, 9.4}}))

In(34):= Show(Plot2, Plot1)

Out(34)= !(*
GraphicsBox({{{}, GraphicsComplexBox(CompressedData("
1:eJxTTMoPSmViYGAQAWIQjQpCHCD0A3sw5RAA5atAaIcwKN8TQjdEQ/mRUPk4
CH2gCEI/SHDAbr4dlM6Eqk+Cqi9F1Z9Qi0P/4HEfANeZI9g=
"), {
{GrayLevel(0.5), InsetBox("(FilledUpTriangle)", 11), 
        InsetBox("(FilledUpTriangle)", 12), 
        InsetBox("(FilledUpTriangle)", 13), 
        InsetBox("(FilledUpTriangle)", 14), 
        InsetBox("(FilledUpTriangle)", 15), 
        InsetBox("(FilledUpTriangle)", 16)}, 
{RGBColor(1, 0, 0), InsetBox("(FilledSquare)", 17), 
        InsetBox("(FilledSquare)", 18), 
        InsetBox("(FilledSquare)", 19), 
        InsetBox("(FilledSquare)", 20)}, {}}), {}}, {{}, 
     GraphicsComplexBox(CompressedData("
1:eJxTTMoPSmViYGAQA2IQjQpCHKpF1rk/rGqxh/BdoPwpUL6Jw6yZILASyldx
wKvfIQBDPYS/E8rXgPJPws03BoPLUL4l1PwbEH6DJ377BqF7AT03Tuo=
"), {
{RGBColor(0, 0, 1), InsetBox("(FilledCircle)", 12), 
        InsetBox("(FilledCircle)", 13), 
        InsetBox("(FilledCircle)", 14), 
        InsetBox("(FilledCircle)", 15)}, 
{RGBColor(0, 1, 0), InsetBox("(FilledDownTriangle)", 16), 
        InsetBox("(FilledDownTriangle)", 17), 
        InsetBox("(FilledDownTriangle)", 18), 
        InsetBox("(FilledDownTriangle)", 19), 
        InsetBox("(FilledDownTriangle)", 20), 
        InsetBox("(FilledDownTriangle)", 21), 
        InsetBox("(FilledDownTriangle)", 22)}, {}}), {}}},
AspectRatio->0.6180339887498948,
Axes->True,
AxesLabel->{None, None},
AxesOrigin->{0, 0},
Method->{},
PlotRange->{{0, 300.}, {0, 470.}},
PlotRangeClipping->True,
PlotRangePadding->{{6., 6.}, {9.4, 9.4}}))

Now when I merge both plots (Plot1 and Plot2 by using Show) some data sets are not visualised, Data points of plot1 are showing just like a point, I understand that I need to break X axis, but I could not do it in mathematica.
Any help will be great for me, i am using mathematica 9.

plotting – Fit ellipse to a arbitrary 2D image to extract centroid, orientation, major, minor axis

The similar command in MMA is ComponentMeasurement. It lists all detected bright components of an image with desired parameter.

a = Import(
  "https://www.mathworks.com/matlabcentral/answers/uploaded_files/
253610/diskimage1.jpeg");

cm = ComponentMeasurements(
  Binarize@a, {"Centroid", "SemiAxes", "Orientation"})

{1 -> {{488.496, 386.124}, {750.908, 620.778}, 3.14156},
2 -> {{438.5, 868.5}, {3.66324, 2.63965}, -1.5708},
3 -> {{526.5, 868.87}, {3.31766, 2.55314}, -1.5708},
4 -> {{539., 871.}, {2.23607, 1.}, 3.14159},
5 -> {{513.864, 866.591}, {2.17306, 1.53368}, -2.87856},
6 -> {{499.6, 483.975}, {205.184, 190.328}, -0.834907},
7 -> {{349.5, 626.}, {1., 0.5}, -1.5708}}

The result contains more than one entry because the presence of the caption on top of the image together with white frame. The needed spot is number six (with second biggest value of simiaxes).

Show(Binarize@a,
 Epilog -> {
   Red,
   Rotate(
    Circle(cm((6, 2, 1)), cm((6, 2, 2))), 
    cm((6, 2, 3)))
   },
 ImageSize -> Automatic)

enter image description here

plotting – How to change the size of the y axis

I got this code but the solution is very tight in the Y axis, I wanna know how can I change the scale or the size of the Y axis and how can I obtain its solution cause it’s not as simple as sol/.t->n. Thanks a lot, any help would be appreciated.

sol = NDSolve({Ca'(t) == 
25 - 0.005 Ca(t) - 8 10^12 E^(-22500/(1.987 T(t) )) Ca(t), T'(t) == 
0.005 (300 - T(t)) + 
 0.01 (8 10^12 E^(-22500/(1.987 T(t) ))) Ca(t) - 
 0.001 (T(t) - 330), Ca(0) == 5000, T(0) == 330}, {Ca, T}, {t, 800})
ParametricPlot(Evaluate({Ca(t), T(t)} /. sol), {t, 0, 800})

enter image description here

How do I specify a consistent interval for a date-range axis in a Google Sheet Chart

I have a Google Sheet with a set of deposits and withdrawls and the running balance. I have added a chart to the sheet, so I can visualize what the balance has been over time and when deposits or withdrawls have been made.

Static Copy:

Details:

The production copy of the sheet is part of a much larger workbook of financial information. Normally, the data in this particular sheet comes from an import from another sheet, with the following syntax:

=IFERROR(
  SORT(
    FILTER(
      {BILL_PAY_LEDGER!E3:E, BILL_PAY_LEDGER!F3:F, BILL_PAY_LEDGER!G3:G},
      BILL_PAY_LEDGER!F3:F=$C$1
    ), 1, TRUE
  ), ""
)

…so the number of rows and the total date range is not known until the user selects a Bucket to view. The data range for the chart is set to C2:C1000,E2:E1000,F2:F1000 in the production copy of the sheet, to account for Buckets with a much longer history of transactions.

I would like the X axis to be formatted with a consistent interval from the first date to the last. I want the graph to show deposits/withdrawls on the dates they happened, but I want the balance to show a proper representation of the available balance over time.

Example:

The best way I can explain it is to provide a screenshot comparison of how Google Sheets spaces out the dates vs. Microsoft Excel. The most obvious difference is between 11/9/2020 and 12/9/2020. You can see that Excel properly condenses that period and Google Sheets seems to treat each data point as the same horizontal distance as the previous/next one.

Comparison of Google Sheets to Microsoft Excel

Microsoft Excel has the following options when formatting the axis:
enter image description here

How can I tell Google Sheets to do the same thing?

google sheets – Lining up 3 years of data on chart by date on X axis

I have three data sets from years 2019, 2020, and 2021.
Each line in the data set is the number of entries for that particular day.

I want to be able to plot each day to show year over year over year activity.

My issue is how do I have a generic X-Axis to show all days from 9/1 – 8/31 (ignoring the year) and then plot a line graph of each year against it. So I can see for example how many entries there are for Jan 10 for each of the years.

Example of Data:
https://docs.google.com/spreadsheets/d/1zjZJim057THNFIi_fm0_UXQ5urvDcepGPX9cZlOa0OI/edit?usp=sharing

You can see in this example sheet that it lines the starting points up together.

python – Fixing figure axis limits

enter image description here

I want this picture to have its axis between 0 and 1. This is my code:

n = 6
p = latin_hypercube_2d_uniform(n)

plt.figure(figsize=(5, 5))
plt.xlim=((0,1))
plt.ylim=((0,1))
plt.scatter(p(:,0), p(:,1), c = 'r')

for i in np.arange(0, 1+1/n, 1/n):
    plt.axvline(i)
    plt.axhline(i)
plt.show()

Please abstain from rude comments, this is a short simple question, i just havent found it on my own. Thanks in advance.

differential equations – Obtaining the other axis value

I’m new at coding and I got this simple differential equiation and the plot of this function involved, I can obtain the value of the dependant variable based on the independant varible as usual, what I want to do now is to find a new value of the independant variable giving it the dependant variable based on the ploted graph, in other words I want to find y for a given x from the graph. this is my short code. Only half of it works.

Sol = NDSolve({a'(t) == Sqrt(a(t)), a(0) == 3}, a, {t, 0, 180})
graph = Plot(a(t) /. Sol, {t, 0, 180})
FindRoot(a(t) == 0.44 /. graph, {t, 0}) (*this is the part that doesn't work*)
a(t) /. Sol /. t -> 180

Any kind of help would be hugely appreciated. Thanks c:

unity – How do I add a third axis of movement for my character to go up and down?

My movement system at the moment is based off of a tutorial I followed. The tutorial is about moving with spherical gravity. I want to add another axis of movement so my character can fly up and down with jet propulsion, but I cant get it to work, here is a couple parts of the tutorial code below:

void Update()
    {
        Vector2 playerInput;
        playerInput.x = Input.GetAxis("Horizontal");
        playerInput.y = Input.GetAxis("Vertical");
        playerInput = Vector2.ClampMagnitude(playerInput, 1f);

        if (playerInputSpace)
        {
            rightAxis = ProjectDirectionOnPlane(playerInputSpace.right, upAxis);
            forwardAxis =
                ProjectDirectionOnPlane(playerInputSpace.forward, upAxis);
        }
        else
        {
            rightAxis = ProjectDirectionOnPlane(Vector3.right, upAxis);
            forwardAxis = ProjectDirectionOnPlane(Vector3.forward, upAxis);
        }
        desiredVelocity =
            new Vector3(playerInput.x, 0f, playerInput.y) * maxSpeed;

        desiredJump |= Input.GetButtonDown("Jump");

        transform.rotation = Quaternion.LookRotation(forwardAxis, upAxis);
        
    }

...

void AdjustVelocity()
    {
        Vector3 xAxis = ProjectDirectionOnPlane(rightAxis, contactNormal);
        Vector3 zAxis = ProjectDirectionOnPlane(forwardAxis, contactNormal);

        float currentX = Vector3.Dot(velocity, xAxis);
        float currentZ = Vector3.Dot(velocity, zAxis);

        float acceleration = OnGround ? maxAcceleration : maxAirAcceleration;
        float maxSpeedChange = acceleration * Time.deltaTime;

        float newX =
            Mathf.MoveTowards(currentX, desiredVelocity.x, maxSpeedChange);
        float newZ =
            Mathf.MoveTowards(currentZ, desiredVelocity.z, maxSpeedChange);

        velocity += xAxis * (newX - currentX) + zAxis * (newZ - currentZ);
    }

How can I add another axis? I already have a third axis control for the trigger buttons set up in the input project settings, but I just cant find a way to fit a rising and falling axis in here. Help would be much appreciated