Avatar billede brilleabe Nybegynder
30. august 2004 - 20:50 Der er 10 kommentarer og
1 løsning

Betinget farveskift for katagori labels i en graf

Jeg har en graf som viser data som bliver logget hver ½ time. Mine labels på katagoriaksen ser således ud:
U36, 2004-8-30 0:31
U36, 2004-8-30 0:02
U36, 2004-8-29 23:33
U36, 2004-8-29 23:01
U36, 2004-8-29 22:31
U36, 2004-8-29 22:02
U36, 2004-8-29 21:32
osv osv

De er sammensat af et ugenummer, en dato og et tidspunkt. Aksen 'autojusterer' antallet af labels, så dette er ikke fast.

Spørgsmålet er:

Er det muligt at farve disse labels efter dato/tidspunkt, således at f.eks alle labels for 'lige' dage er røde og alle 'ulige' dage er sorte, eller efter tidspunktet f.eks rød for 0700-1500, sort for 1500-2300 og blå for 2300-0700?
Avatar billede kabbak Professor
30. august 2004 - 22:13 #1
=ER.LIGE(DAG(B2))

er formlen for om dagen er lige eller ulige.

jeg ved ikke meget om grafer, så det med farver, kan jeg nok ikke hjælpe med.
Avatar billede moba Nybegynder
30. august 2004 - 22:15 #2
Det er sgu et godt spørgsmål... Jeg tror ikke det kan lade sig gøre, da excel, såvidt jeg ved, kun giver dig mulighed for at redigere kategoriaken som en enhed.
ActiveSheet.ChartObjects("Diagram xxx").Activate
    ActiveChart.Axes(xlCategory).Select
    Selection.TickLabels.AutoScaleFont = True
    With Selection.TickLabels.Font
            .ColorIndex = 53
    end with

Held og lykke
Morten
Avatar billede bak Forsker
30. august 2004 - 23:02 #3
Det kan du snilt gøre, men jeg skal lige vide om en label ser således ud U36, 2004-8-29 22:02

eller om jeg har misforstået noget ?
Avatar billede bak Forsker
30. august 2004 - 23:07 #4
denne sub køres når grafen er aktiv
I dette eksempel er skala i dage på formen 14-05-04

Sub Makro1()
  Dim x As Point
  Dim y, z
    For Each x In ActiveChart.SeriesCollection(1).Points
'her laver vi lige teksten fra datalabelen om til en rigtig dato
    z = Split(x.DataLabel.Text, "-")
    y = DateSerial(z(2), z(0), z(1))
'hvis datoen er lige farv gul (4) ellers grøn (6)
    If y Mod 2 = 0 Then
        x.DataLabel.Interior.ColorIndex = 4
    Else
        x.DataLabel.Interior.ColorIndex = 6
    End If
    Next
End Sub
Avatar billede bak Forsker
30. august 2004 - 23:14 #5
arrrh, fejlfortolkning.
De farver jeg ændrer er farverne på label over grafen, ikke dem under :-(
Avatar billede bak Forsker
31. august 2004 - 07:44 #6
Det ser ikke ud til at kunne gøres .....
Er det et søjlediagram ?
Hvis det er tilfældet kunne man jo farve søjlerne istedet.
Avatar billede brilleabe Nybegynder
31. august 2004 - 18:06 #7
wow - det var mange fine forslag...
Det er et stacked area diagram. Jeg kan ikke bruge søjle - fordi jeg viser 24-500 datasæt i grafen - så bliver det ulæseligt med søjler.

Men - er det muligt at farve area - eller kan man 'udviske' mellemrummet omkring søjlerne så det bliver læseligt? Så kunne man jo farve søjlerne..
Avatar billede brilleabe Nybegynder
30. januar 2005 - 10:25 #8
bak, Jeg har endnu ikke fået løst problemer, men hvis du smider et svar får du lidt point for forsøget.
Avatar billede brilleabe Nybegynder
21. april 2005 - 20:43 #9
lukketid
Avatar billede bak Forsker
21. april 2005 - 21:49 #10
ok :-)
Avatar billede brilleabe Nybegynder
02. maj 2005 - 22:01 #11
...og så har jeg faktisk løst probelmet - via en pivot tabel/chart. Det er faktisk muligt at farve de enkelt søjler ved at lave en 'farve' kolonne i rådata. Så kan man vælge at vise denne kolonne i et pivot-chart.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Excel kurser for alle niveauer og behov – find det kursus, der passer til dig

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester