svelte-plots-basic 3.0.2 → 3.0.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -1
- package/src/2d/TextLabels.svelte +10 -7
package/package.json
CHANGED
package/src/2d/TextLabels.svelte
CHANGED
|
@@ -10,7 +10,6 @@
|
|
|
10
10
|
- `lineColor`- border colors of label symbols, default: `'transparent'`.
|
|
11
11
|
- `lineWidth`- border width of label symbols in pixels, default: `0`.
|
|
12
12
|
- `textSize`- size of label symbols in em, default: `1`.
|
|
13
|
-
- `className`- CSS class name for the labels group, default: `'series-text'`.
|
|
14
13
|
- `rotateAngle`- angle to rotate labels, default: `0`.
|
|
15
14
|
- `onclick` - function (callback) to be called when user clicks on a label.
|
|
16
15
|
|
|
@@ -42,8 +41,8 @@
|
|
|
42
41
|
labels, // array with labels (strings)
|
|
43
42
|
pos = 0, // position of labels related to coordinates (middle, bottom, left, top, right)
|
|
44
43
|
faceColor = Colors.PRIMARY_TEXT, // face color of label symbols
|
|
45
|
-
lineColor = 'transparent',
|
|
46
|
-
lineWidth = 0,
|
|
44
|
+
lineColor = 'transparent', // border colors of label symbols
|
|
45
|
+
lineWidth = 0, // border width of label symbols
|
|
47
46
|
textSize = 1, // size of label symbols
|
|
48
47
|
rotateAngle = 0, // angle to rotate labels
|
|
49
48
|
onclick, // function to be called if onclick event fires
|
|
@@ -87,8 +86,8 @@
|
|
|
87
86
|
|
|
88
87
|
// define x and y shifts for positioning
|
|
89
88
|
const m = $derived(LABELS_MARGIN[axes.scales().plot]);
|
|
90
|
-
const dx = $derived([0, 0, m, 0,
|
|
91
|
-
const dy = $derived([0, m,
|
|
89
|
+
const dx = $derived([0, 0, -m, 0, m, m]);
|
|
90
|
+
const dy = $derived([0, m, 0, -m, 0, m]);
|
|
92
91
|
|
|
93
92
|
// styles for the elements
|
|
94
93
|
const textStyleStr = $derived(`fill:${faceColor};stroke-width:${lineWidth}px;stroke:${lineColor};font-size:${textSize}em;`);
|
|
@@ -113,13 +112,17 @@
|
|
|
113
112
|
{:else if (Array.isArray(pos) || ArrayBuffer.isView(pos))}
|
|
114
113
|
|
|
115
114
|
{#each x as v, i}
|
|
116
|
-
<text data-id={i} x={x[i]} y={y[i]} dx={dx[pos[i]]} dy={dy[pos[i]]}
|
|
115
|
+
<text data-id={i} x={x[i]} y={y[i]} dx={dx[pos[i]]} dy={dy[pos[i]]}
|
|
116
|
+
transform={rotateAngle !== undefined ? `rotate(${rotateAngle}, ${x[i] + dx[pos]}, ${y[i] + dy[pos]})` : ''}
|
|
117
|
+
text-anchor={textAnchors[pos[i]]}>{@html labels[i]}</text>
|
|
117
118
|
{/each}
|
|
118
119
|
|
|
119
120
|
{:else}
|
|
120
121
|
|
|
121
122
|
{#each x as v, i}
|
|
122
|
-
<text data-id={i} x={x[i]} y={y[i]} dx={dx[pos]} dy={dy[pos]}
|
|
123
|
+
<text data-id={i} x={x[i]} y={y[i]} dx={dx[pos]} dy={dy[pos]}
|
|
124
|
+
transform={rotateAngle !== undefined ? `rotate(${rotateAngle}, ${x[i] + dx[pos]}, ${y[i] + dy[pos]})` : ''}
|
|
125
|
+
text-anchor={textAnchors[pos]}>{@html labels[i]}</text>
|
|
123
126
|
{/each}
|
|
124
127
|
|
|
125
128
|
{/if}
|