2011-01-16 5 views
4

Ich verfolge die ASP.NET Razor Pages guide to generate charts in einer ASP.NET MVC 3-Ansicht.Wie ändere ich die Diagrammparameter (z. B. Tortenstückfarben) in einem Diagramm, das mit Hilfe des Rasierkreistools erstellt wurde?

Ich kann ein Kreisdiagramm erzeugen/anzeigen. Aber ich kann nicht sehen, wie man die Farben der Kuchendias ändert - oder ein Stück explodieren.

Ich habe versucht, die "Series" -Auflistung des Chart-Objekts zu referenzieren, aber es sieht nicht so aus.

Hier ist das Code-Snippet, das ich derzeit habe.

<td> 
    @{     
     Chart chart = 
      new Chart(width: 100, height: 100) 
       .AddSeries(chartType: "Pie", name: "Dafault", xValue: new[] { "Yes", "No" }, yValues: new[] { 70.2m, 29.8m }); 

     chart.Write(); 
    } 
</td> 

Kann mir jemand sagen, wie ich das machen würde?

Antwort

5

Dommer,

Ich bin nur ein Schritt voraus Sie hier, aber Sie können benutzerdefinierte Farben mit der „themePath“ Eigenschaft in dem Chart Konstruktor erstellen. Es ist nicht gut dokumentiert, aber themePath ist ein Pfad zu einem XML-Dokument, das das Diagramm im Detail beschreibt. Sie können Beispiele für den XML-Code abrufen, indem Sie Intellisense für die String-Consts im Theme ausführen (was ein optionaler dritter Parameter im Konstruktor von Chart ist).

Sie können einen Verweis auf themePath Werte und XML-Beispiel unter folgendem Link zu finden: http://www.mikepope.com/blog/documents/WebHelpersAPI.html#Chart

Jetzt, um benutzerdefinierte Farben. Das XML in den Designdateien zeigt ein Palettenattribut im Diagrammelement. Setzen Sie das auf 'None' und fügen Sie ein Attribut 'PaletteCustomColors' mit einer Sammlung von RGB-Werten wie folgt hinzu:

PaletteCustomColors = '0,0,255; 0,255,0; 255,0,0; 0,255,255; 255,0,255; 255,255,0'

finden Sie in themePath im contsructor wie so:

string pathName = "~/Content/Test3DTheme.xml"; 
var chart = new Chart(width: 600, height: 400, themePath: pathName) [add methods here] 

Dies sollte es tun. Nebenbei bemerkt scheint es, dass das Thematisierungsprotokoll eine Menge von Attributen verwendet, die Eigenschaften in der System.Web.UI.DataVisualization.Chart sind. Sie können experimentieren (wie ich gerade tue), indem Sie die Attribute optimieren und hinzufügen/entfernen, um zu sehen, was das Aussehen Ihres Diagramms verändert und was es bricht. Der Parser ist sehr persnicky über die Attribute, die er akzeptiert.

Hoffe, das hilft.

Jim Stanley

Tafel Connect Inc.

1

Sie verwenden die im System.Web.Helpers-Namespace verfügbare Diagrammerstellung. Sie benötigen eine vollständige Diagrammkomponente, die unter System.Web.UI.DataVisualization-Namespace verfügbar ist. Hier ist der Link, um loszulegen Charting with MVC Hier ist der Link zur Verwendung der vollständigen Blow Charting-Funktionen mit Interaktivität. Charting with interactivity