Haben Sie darüber nachgedacht, in der ersten Grafik Ihren eigenen xlim und ylim anzugeben (auf die entsprechenden Werte zu setzen) und dann diese Werte erneut zu verwenden, um die Grenzen für das Histogramm in der zweiten Grafik festzulegen?
Allein durch das Zeichnen der Dichte sollten Sie in der Lage sein, sinnvolle Werte für die minimalen und maximalen Werte für beide Achsen auszuarbeiten und dann xmin, xmax, ymin und ymax für diese Werte im folgenden Code zu ersetzen.
etwas wie
%Vor% Die Verwendung von par(new=TRUE)
ist selten, wenn überhaupt, die beste Lösung. Viele Plotfunktionen haben eine Option wie add=TRUE
, die zum vorhandenen Plot hinzugefügt wird (einschließlich der Plotfunktion für Histogramme wie in den Kommentaren erwähnt).
Wenn Sie es wirklich so machen müssen, dann schauen Sie sich das usr
Argument für die par
Funktion an, macht mylims <- par("usr")
die x- und y-Grenzen des existierenden Plots in Benutzerkoordinaten. Wenn Sie diese Informationen jedoch für ein neues Diagramm verwenden, stellen Sie sicher, dass xaxs='i'
festgelegt ist oder dass die tatsächlichen Koordinaten, die in dem neuen Diagramm verwendet werden, um 4% über das hinausgehen, was Sie angeben.
Die Funktionen grconvertX
und grconvertY
sind ebenfalls hilfreich. Sie könnten verwendet werden oder zu diesem Zweck, sind aber wahrscheinlich übertrieben im Vergleich zu par("usr")
, aber sie können nützlich sein, um die Grenzen in anderen Koordinatensystemen zu finden oder um Werte wie die Mitte der Zeichenregion in Benutzerkoordinaten zu finden.
Wenn Sie aus irgendeinem Grund range()
nicht verwenden können, um die Grenzwerte zu erhalten, folge ich @ Gregs Vorschlag. Dies funktioniert nur, wenn die par
-Parameter "xaxs" und "yaxs" auf "s" gesetzt sind (was der Standardwert ist) und der Koordinatenbereich um 4% erweitert wird:
Ich denke, die beste Lösung ist, sie zu reparieren, wenn Sie Ihre Dichte grafisch darstellen.
Sonst hacing im Code von plot.default (plot.R)
%Vor%oder um den obigen Code zu verwenden, um xlim und ylim zu generieren, rufen Sie dann Ihr Diagramm für die Dichte
auf %Vor%