עבודה עם תרשימים

עבודה עם תרשימים

עבודה עם תרשימים

Aspose.Words FOSS עבור .NET יכול להכניס תרשימי Word מקוריים — אותם תרשימי DrawingML ש-Word יוצר בעצמו — כצורה בשכבת הציור. DocumentBuilder.InsertChart יוצר את הצורה ומחזיר אותה; המאפיין Chart של הצורה חושף סדרות, צירים, מקרא ועיצוב. מדריך זה מכסה יצירת תרשים, בחירת סוג תרשים, עבודה עם סדרות ונקודות נתונים, צירים וקווי רשת, ועיצוב רכיבי התרשים.


יצירת תרשים

קרא ל-DocumentBuilder.InsertChart(chartType, width, height) כדי להכניס צורת תרשים במיקום הסמן ולקבל בחזרה את ה-Shape המכיל. המאפיין Chart שלו הוא האובייקט Chart שאתה מגדיר. תרשים שהוכנס זה עתה מגיע עם סדרות מציין מיקום לדוגמה, לכן נקה את Chart.Series לפני הוספת נתונים אמיתיים עם ChartSeriesCollection.Add(seriesName, categories, values):

using Aspose.Words;
using Aspose.Words.Drawing.Charts;

Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);

Shape shape = builder.InsertChart(ChartType.Line, 432, 252);
Chart chart = shape.Chart;

// Delete default generated series.
chart.Series.Clear();

string[] categories = new string[] { "AW Category 1", "AW Category 2", "AW Category 3" };
chart.Series.Add("AW Series 1", categories, new double[] { 4.3, 2.5, 3.5 });

doc.Save("chart.docx");

דוגמה זו בונה Document, משתמשת ב-DocumentBuilder.InsertChart(ChartType.Line, 432, 252) כדי להכניס צורת תרשים קו, קוראת ל-shape.Chart כדי לקבל את האובייקט Chart, קוראת ל-chart.Series.Clear() כדי להסיר את סדרת המציין מיקום, מוסיפה סדרה אמיתית אחת עם chart.Series.Add(seriesName, categories, values), וכותבת את התוצאה עם Document.Save.


סוגי תרשימים

ChartType מכסה את משפחות התרשימים הסטנדרטיות של Word — Line, Bar, Column (כולל הווריאנטים Stacked, PercentStacked, ו-3D), Pie, PieOfPie, Doughnut, Area, Scatter, Bubble, Radar, Stock, Surface, והסוגי תרשימים החדשים של Word 2016 Treemap, Sunburst, Histogram, Pareto, BoxAndWhisker, ו-Waterfall. העבר את הערך הרצוי כארגומנט chartType ל-InsertChart; אין אפשרות לשנות את סוג התרשים הקיים לאחר ההוספה אלא על ידי החלפת הצורה.


סדרות ונקודות נתונים

Chart.Series הוא ChartSeriesCollection של עצמים ChartSeries. מעבר להעמסה Add(seriesName, categories, values) שהשתמשו בה למעלה, ל-ChartSeriesCollection יש גם העמסות עבור זוגות ערכי X/Y, תאריכים, וגדלי בועות, וכן Insert, Remove(index), ו-Clear(). כל ChartSeries חושף DataPoints (‏ChartDataPointCollection) לעיצוב לכל נקודה — Format, Marker, Explosion, ו-InvertIfNegative — ו-HasDataLabels / DataLabels להפעיל ולהגדיר ChartDataLabelCollection (ShowValue, ShowCategoryName, ShowPercentage, Position).


צירים וקווי רשת

Chart.AxisX, AxisY, ו-AxisZ הם עצמים ChartAxis (עם Chart.Axes בתור ChartAxisCollection לעבור על כולם). לכל ציר יש HasMajorGridlines / HasMinorGridlines, MajorUnit / MinorUnit (עם דגלי *IsAuto תואמים), Crosses / CrossesAt, CategoryType, ו-אובייקט TickLabels (AxisTickLabels) לגופן ולכיוון התוויות. ChartAxis.Title (ChartAxisTitle) מגדיר את טקסט הכיתוב של הציר דרך המאפיינים Text ו-Show.


מקרא, כותרת וטבלת נתונים

Chart.Title (ChartTitle) מגדיר את הכיתוב הכולל של התרשים — Text, Show, ו-Font. Chart.Legend (ChartLegend) שולט האם והיכן המקרא מופיע באמצעות Position (ערך LegendPosition כגון Bottom, Right או Top) ומחשוף LegendEntries פרטיים. Chart.DataTable (ChartDataTable) יכול להציג את ערכי הסדרות הבסיסיים בטבלה מתחת לאזור התרשים, עם Show, HasLegendKeys, והפעלות גבול.


עיצוב רכיבי התרשים

רוב רכיבי התרשים — סדרות, נקודות נתונים, צירים, הכותרת והמקרא — חושפים מאפיין Format מסוג ChartFormat, אשר בתורו חושף את Fill ו-Stroke לצבעי הרכיב, בנוסף ל-ShapeType (ChartShapeType) לצורות סמני נקודות הנתונים. ChartFormat.SetDefaultFill() מאפס רכיב חזרה למראה ברירת המחדל המונע על-ידי ערכת הנושא.


טיפים ושיטות עבודה מומלצות

  • תמיד נקה או החלף את סדרת המחליף (chart.Series.Clear()) לפני הוספת נתונים אמיתיים — גרף שמוכנס זה עתה מגיע עם נתוני דוגמה כבר בתוכו.
  • השתמש בעומסי ChartSeriesCollection.Add התואמים לצורת הנתונים שלך (קטגוריות, זוגות X/Y, תאריכים או גדלי בועות) במקום לכפות את הכול דרך זוגות קטגוריה/ערך.
  • הגדר HasDataLabels = true על סדרה לפני קביעת אוסף ה-DataLabels שלה — מאפייני התצוגה של האוסף אינם משפיעים באופן נראה כאשר התוויות מושבתות.
  • קרא את Chart.ChartSpace או בדוק את ה-ChartType הספציפי לפני שאתה מסתמך על התנהגות קווי הרשת או צירי הגרף השונה בין גרפים קלאסיים לגרפים בסגנון Word-2016.
  • העדף ChartFormat.SetDefaultFill() על פני ניקוי ידני של כל מאפיין מילוי כאשר ברצונך לאפס את המראה של אלמנט.

בעיות נפוצות

בעיהסיבהפתרון
תרשים חדש מציג נתוני הדגמה לא צפוייםInsertChart מזין את התרשים בסדרת מצייני מקוםהפעל את chart.Series.Clear() לפני הוספת הסדרות שלך
תוויות הנתונים אינן מופיעותHasDataLabels לא הוגדר על הסדרה לפני קביעת DataLabelsהגדר series.HasDataLabels = true, לאחר מכן הגדר ShowValue/ShowCategoryName על series.DataLabels
קווי הרשת אינם מוצגים על ציר הערכיםHasMajorGridlines/HasMinorGridlines בברירת מחדל לfalse עבור ציר זההגדר chart.AxisY.HasMajorGridlines = true (וHasMinorGridlines אם נדרש)
המקרא אינו מופיעChart.Legend.Position מוגדר לLegendPosition.Noneהגדר Position לBottom, Right, Top, Left או TopRight

FAQ

איך אני מוסיף גרף למסמך?

קרא ל-DocumentBuilder.InsertChart(chartType, width, height). הוא מחזיר את ה-Shape המכיל; קרא את המאפיין Chart שלו כדי להגדיר את הגרף.

איך אני מוסיף נתונים לגרף?

נקה את סדרת המצע עם chart.Series.Clear(), ואז קרא ל-chart.Series.Add(seriesName, categories, values) (או לאחת מהגרסאות העודפות של Add עבור נתוני X/Y, תאריך, או בועות).

אילו סוגי גרפים זמינים?

ChartType כולל את המשפחות הקלאסיות (Line, Bar, Column, Pie, Area, Scatter, Bubble, Radar, Stock, Surface, וכן את גרסאות ה-stacked וה-3D שלהם) ואת סוגי הגרפים של Word 2016 (Treemap, Sunburst, Histogram, Pareto, BoxAndWhisker, Waterfall).

איך אני משנה היכן שמופיעה המקרא?

הגדר את Chart.Legend.Position לערך LegendPosition, כגון LegendPosition.Bottom או LegendPosition.Right.

האם אני יכול לעצב נקודת נתונים בודדת באופן שונה משאר הסדרה שלה?

כן — ציין אינדקס ב-ChartSeries.DataPoints (‏ChartDataPointCollection) והגדר את ה-Format, Marker או Explosion של ה-ChartDataPoint באופן עצמאי מהעיצוב ברמת הסדרה.


API Reference סיכום

מחלקה/מתודהתיאור
DocumentBuilder.InsertChartמכניס צורת גרף במיקום הסמן ומחזיר אותה.
Chartאובייקט תצורת הגרף, נגיש באמצעות Shape.Chart.
ChartTypeEnum של סוגי גרפים זמינים (line, bar, pie, וסוגי גרפים של Word-2016).
ChartSeriesCollection / ChartSeriesסדרות הנתונים של הגרף והשיטות להוסיף, להכניס או להסיר אותן.
ChartDataPointCollection / ChartDataPointעיצוב לפי נקודה בתוך סדרה.
ChartDataLabelCollection / ChartDataLabelתוויות ערך/קטגוריה שמוצגות על נקודות התרשים.
ChartAxis / ChartAxisCollectionקונפיגורציית הציר — קווי רשת, יחידות, נקודת חצייה, תוויות סימון.
ChartLegend / LegendPositionנראות המקרא והמיקום.
ChartTitleהכיתוב הכולל של התרשים.
ChartDataTableטבלה אופציונלית של ערכי הסדרה המופיעה מתחת לאזור התרשים.
ChartFormatעיצוב המילוי, הקו והצורה משותף לרוב רכיבי התרשים.

ראה גם

 עברית