Denne artikkelen viser hvor enkelt Det er å lage et punktdiagram med plottområdet delt horisontalt og vertikalt i fire regioner. Regionene er adskilt av diagramaksene, og disse aksene kan plasseres der det er nødvendig for å avgrense kvadrantene.
![Quad Diagram Ved Hjelp Av Akser Som Kvadrant Grenser](https://peltiertech.com/images/2015-07/QuadAxisChart.png)
jeg har skrevet en tutorial som viser hvordan du oppretter Et Excel-Diagram Med Farget Kvadrant Bakgrunn, som var mer komplisert, som det brukes stablet områder og sekundære akser for å få farget bakgrunn. Dette er mye enklere å opprette og vedlikeholde, og tjener mye samme formål.
her er eksempeldataene X Og Y, med beregnede gjennomsnitt, og det første xy-punktdiagrammet. Vi vil plassere aksene i de respektive gjennomsnittene Av x-og Y-dataene, selv om du kan plassere dem hvor det er fornuftig i analysen din.
![Quad Chart By Axes-Data Og Diagram](https://peltiertech.com/images/2015-07/QuadAxesDataAndChart1.png)
Vi må omplassere aksene i dette diagrammet. Dobbeltklikk på den vannrette aksen, eller velg den vannrette aksen og trykk Ctrl+1 (tall en), for å åpne Oppgaveruten formater Akse (Vist her, Excel 2013) eller Formater Akse dialog (fungerer mye det samme i tidligere Excel-versjoner). Under Aksealternativer >Loddrette Aksekryss, velger Du Akseverdi-alternativet, og skriver inn x-gjennomsnittet i boksen, som vist.
![Format Axis Oppgaverute-Akse Krysser På](https://peltiertech.com/images/2015-07/FmtAxisCrossesAt.png)
resultatet vises nedenfor til venstre. Gjenta for den vertikale aksen, under høyre.
![Quad Chart By Axes-Posisjon Akser](https://peltiertech.com/images/2015-07/QuadAxesCharts2.png)
disse akseetikettene er helt i veien, Men det er enkelt å flytte dem. Formater hver akse (åpne oppgaveruten eller dialogboksen som ovenfor) og velg Lav Fra rullegardinmenyen Under Etiketter > Etikettposisjon.
![Format Axis Oppgaverute-Etikettposisjon Lav](https://peltiertech.com/images/2015-07/FmtAxisLabelsLow.png)
nå er disse etikettene langs kantene av diagrammet, der de gjør mer godt enn skade (nedenfor til venstre). Du kan gjøre en liten mengde formatering for å få kvadrantene til å stikke ut litt tydeligere. I diagrammet nedenfor til høyre har jeg brukt en lysere gråton for rutenettene, og jeg har brukt en mørkere farge, faktisk samme farge som markørene, for akselinjefargen.
![Quad Chart By Axes-Position Labels And Reformat](https://peltiertech.com/images/2015-07/QuadAxesCharts3.png)
DET er enkelt Å bruke VBA til å plassere aksene og akseetikettene, ved hjelp av en enkel rutine som vist nedenfor. Denne rutinen plasserer etikettene, og bruker deretter gjennomsnittene beregnet i regnearket til å plassere akselinjene.
Sub AxesAsQuadBoundaries1() With ActiveChart With .Axes(xlCategory) .TickLabelPosition = xlTickLabelPositionLow .CrossesAt = ActiveSheet.Range("A17").Value2 End With With .Axes(xlValue) .TickLabelPosition = xlTickLabelPositionLow .CrossesAt = ActiveSheet.Range("B17").Value2 End With End WithEnd Sub
den neste rutinen hopper over regnearkberegningene, i stedet tar gjennomsnittene For x-og Y-verdiene som er tegnet inn i diagrammet, for å plassere akselinjene.
Sub AxesAsQuadBoundaries2() Dim vData As Variant With ActiveChart vData = .SeriesCollection(1).XValues With .Axes(xlCategory) .TickLabelPosition = xlTickLabelPositionLow .CrossesAt = WorksheetFunction.Average(vData) End With vData = .SeriesCollection(1).Values With .Axes(xlValue) .TickLabelPosition = xlTickLabelPositionLow .CrossesAt = WorksheetFunction.Average(vData) End With End WithEnd Sub
du kan til og med bruke regnearkhendelser til å omplassere diagramaksene. Mine x-og Y-verdier ble beregnet ved hjelp av =RANDBETWEEN(2,14)
, så når regnearket beregner (f.eks. ved å trykke på f9-funksjonstasten), endres verdiene. Jeg kan tappe inn i denne beregningshendelsen som følger.
- Høyreklikk på fanen regneark, og velg Vis Kode fra popup-menyen. VB-Editoren åpnes med en kodemodul som svarer til regnearket.
- Velg Regneark fra rullegardinmenyen til venstre øverst i den nye kodemodulen.
- Velg Beregn fra rullegardinmenyen til høyre.
- Skriv inn koden som vist.
![Worksheet_Calculate Event For Å Holde Aksene I Posisjon](https://peltiertech.com/images/2015-07/VBA_Wksht_Calc.png)
her er koden, Slik at du ikke trenger å skrive alt selv. Bare kopier og lim inn i regnearkets kodemodul.
Private Sub Worksheet_Calculate() Dim vData As Variant With Me.ChartObjects(1).Chart vData = .SeriesCollection(1).XValues With .Axes(xlCategory) .TickLabelPosition = xlTickLabelPositionLow .CrossesAt = WorksheetFunction.Average(vData) End With vData = .SeriesCollection(1).Values With .Axes(xlValue) .TickLabelPosition = xlTickLabelPositionLow .CrossesAt = WorksheetFunction.Average(vData) End With End WithEnd Sub
Avhengig av detaljene i regnearkmodellen din, kan du bruke Worksheet_Calculate
, Worksheet_Change
, Worksheet_PivotTableUpdate
, eller andre hendelsesprosedyrer for å oppdatere diagrammet.